jre6.0 には WebService のサポートが追加されており、再利用可能なリソース クラスは使用されません。
看看この样第段代コード:
ソースプリントを表示?01 @WebService(name="TestWS",
02 サービス名 = "TestWS")
03 パブリック クラス TestWS {
04 /**
05 * 测试相加方法
06 * @param x
07 * @param y
08 * @return
09 */
10 @ウェブメソッド
11 public int TestMethod(int x,int y){
12 x + y を返します。
13 }
14 }
ソースプリントを表示?01 <PRE class=brush:java>/**
02 * @author v.xieping
03 *
04 */
05 公開授業 プログラム {
06 /**
07 * @param 引数
08 */
09 public static void main(String[] args) {
10 エンドポイント.パブリッシュ(
11 " http://192.168.53.43:8090/CSEventWS/TestWS "、
12 新しい TestWS());
13 ThreadWaitor.keepWait();
14 }
15 }
16 </PRE>
この使用法
ソースプリントを表示?1 http://192.168.53.43:8090/CSEventWS/TestWS
view sourceprint?1 このアドレスはこの WebService に接続できます。
ソースプリントを表示?1
view sourceprint?1 しかし、奇妙な問題が 1 つあります。私は nusoap クラスでこれまで同様の使用を成功させることができませんでした。
ソースプリントを表示?1 1、WSDL问题
view sourceprint?1 不使用地址<PRE class=brush:java>http://192.168.53.43:8090/CSEventWS/TestWS</PRE>
2 <PRE class=brush:java>还是地址</PRE>
3 <PRE class=brush:java><PRE class=brush:java>http://192.168.53.43:8090/CSEventWS/TestWS?wsdl</PRE>
4 <PRE class=brush:java>nusoap オブジェクトの作成時に、すべてが他が wsdl であることを認識できません。つまり、この 2 つのアドレスはすべて wsdl ではありません。</PRE>
5 <PRE class=brush:java></PRE>
6 </PRE>
ソースを表示print?1 2、命空间问题
view sourceprint?1 大家都知道の一般的な公開では、使用されている命名空間はすべて「http://tempuri.org/」ですが、ここではそうではなく、 http://ws.csevent/ になります。
view sourceprint?1 <PRE class=brush:java>http://192.168.53.43:8090/CSEventWS/TestWS?wsdl</PRE> を使用できます
2 <PRE class=brush:java>このような場所を参照 <settings targetNamespace=" http://ws.csevent/ " name="TestWS"></PRE>
3 <PRE class=brush:java></PRE>
3、パラメータ问题
一般的な WSDL アドレスのパラメータは名前に関連していますが、ここではそうではなく、使用されます。
$params = array('arg0' => 100,'arg1' => 200);
このようにして定められる。
http://192.168.53.43:8090/CSEventWS/TestWS?wsdlからアクセスできます。
<types>−<xsd:schema><xsd:import namespace=" http://ws.csevent/ " schemaLocation=" http://192.168.53.43:8090/CSEventWS/TestWS?xsd=1"/ ></xsd:スキーマ></types><タイプ>
−<xsd:スキーマ>
<xsd:import namespace=" http://ws.csevent/ "
schemaLocation=" http://192.168.53.43:8090/CSEventWS/TestWS?xsd=1"/ >
</xsd:スキーマ>
</types>
再度http://192.168.53.43:8090/CSEventWS/TestWS?xsd=1 を開くと、使用されるパラメータ名が表示されます。
<xs:complexType name="テストメソッド">
−
<xs:シーケンス>
<xs:要素名="arg0" type="xs:int"/>
<xs:要素名="arg1" type="xs:int"/>
</xs:シーケンス>
</xs:complexType>
最大の用途:
注意: 以下のコードは使用される軽い php フレームです。nusoap の最初のパッケージです。
$objSoap = 新しい HTTP_SOAP();
$client = $objSoap->getClient($this->url,false);
$params = array('arg0' => 100,'arg1' => 200);
$r = $client->call('TestMethod',$params ,'http://ws.csevent/','',false,true);
Debug_Util::log($r,"service.log");