作者PTTsucker (今晚打老虎)
看板java
标题[问题] 新手想问用java来实做SOAP的问题....
时间Sun Jan 6 19:29:07 2008
希望有玩过SOAP这一部分的高手能帮我解决问题....
我写了一个很简单的功能
就是呼叫sayHelloWorld这个function时
回传HelloWorld
然後印出来
我把这个class放在soap admin上
奇怪的是
在传递SOAP时
看不到它的SOAP header部分(被省略了)
因为程式还算初学
所以不知道要怎麽改
才会让它显示出有header部分的SOAP格式呢
拜托各位大大帮帮忙了
我在论坛上找到这个相关的文件
上面是说...
"一般对 SOAP Header 的期待, 是希望利用 Header 来传递关於像 Security,
Reliability, Session, 以及 Transaction 这一类的 Service Context....."
看完还是不知道怎麽改....
http://www.javaworld.com.tw/jute/post/view?bid=19&id=15575&sty=3
以下是我自己做范例
(Client端)
import java.net.URL;
import org.apache.soap.Constants;
import org.apache.soap.rpc.*;
public class HelloWorldSOAPClient
{
public static void main(String[] args)
{
try
{
String urladdr="
http://localhost:8080/soap/servlet/rpcrouter";
String uri = "urn:HelloWorldSOAPServer";
String methodname = "sayHelloWorld";
Call call = new Call();
call.setTargetObjectURI(uri);
call.setMethodName(methodname);
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
URL url = new URL (urladdr);
Response response = call.invoke(url,"");
Parameter r = response.getReturnValue();
System.out.println("Message from Server :" + r.getValue());
}
catch (Exception e)
{e.printStackTrace();}
}
}
(server服务)
public class HelloWorldSOAPServer
{
public String sayHelloWorld()
{
return "HelloWorld";
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.135.11.97