jwstutorial13

・JWSDP1.3のチュートリアル。
build.xmlでの
org.apache.catalina.ant.ListTaskの定義のために
${TOMCAT}/server/lib/catalina-ant.jar が必要。



jax-rpc: JAX-RPC FAQ https://jax-rpc.dev.java.net/faq/
jaxrpcの要求ランタイム
jaxrpc-api.jar
jaxrpc-impl.jar
jaxrpc-spi.jar
saaj-api.jar
saaj-impl.jar
jaxp-api.jar
dom.jar
sax.jar
xalan.jar
xercesImpl.jar
activation.jar
mail.jar
jax-qname.jar
namespace.jar
xsdlib.jar
relaxngDatatype.jar



●チュートリアルでのやり方
・通常のコンパイル
・クラスからwscompileでwsdlとmodel.gzを生成
・通常クラス,inserface.xml,model.gz,web.xml入りのportable.warを作成
・tie入りのjaxrpc.warを生成する。


コマンドライン
$wscompile.sh -define -d build -nd build -classpath build config-interface.xml -model build/model.gz
$wsdeploy.sh -o dist/hello-jaxrpc.war dist/hello-jaxrpc-portable.war


●成果物のwar
・wsdeploy.sh でwarを生成するとweb.xmlにRPCリクエストプロセッサのcom.sun.xml.rpc.server.http.JAXRPCServletが登録されている。

WEB-INFには以下のxmlが登録されている。
web-before.xml web.xml
jaxrpc-ri-before.xml jaxrpc-ri-runtime.xml
model.gz



config.xml 成果物のwarには含まれない。
configuration/service
configuration/wsdl
などの設定ファイル。wscompile.shが使用する。
おそらく、java2wsdlにはconfiguration/service
が、wsdl2javaにはconfiguration/wsdl
が必要なのだろう。
model.gz モデルオブジェクトのjava-xmlバインディング情報
jaxrpc-ri.xml endpoints情報


configファイルの
configuration/service/interface/servantName
に実装クラスを記述する。


wscompileは前のバージョンではxrpccという名前だったのでxrpccでググるとよい。


JAX-RPC スタートガイド
http://sdc.sun.co.jp/java/techarticles/getstartjaxrpc/index.html


Web サービス for Java 入門
http://www.wakhok.ac.jp/~maruyama/winter02/winter02.pdf
丸山センセイの講義だ。ヤタッ!


jax-rpc: Understanding your JAX-RPC SI environment

https://jax-rpc.dev.java.net/whitepaper/1.1/index-part1.html
ant,wscompileタスクマニュアル。
https://jax-rpc.dev.java.net/whitepaper/1.1/index-part2.html



wscompile, wsdeployのマニュアル。
http://java.sun.com/webservices/docs/1.3/jaxrpc/jaxrpc-tools.html


jaxrpc-ri.xml の内容。
Advanced JAX-RPC Examples http://java.sun.com/webservices/docs/1.3/tutorial/doc/JAXRPC7.html#wp123051
1.4になって、1.3のドキュメントのリンクを消すのは不親切極まりない。


docs.sun.com: Sun ONE Application Server 7 man pages http://docs.sun.com/db/doc/816-6443/6mch3fodd?l=ja&a=view
wscompile,wsdeployのマニュアルがある…。


http://forum.java.sun.com/thread.jsp?forum=331&thread=510138
Topic: Web Services: No JAX-RPC context information available.

Within the earlier mentioned fix for the JAXRPCServlet (to fix the order of the ContextListener and the init method), write the following statement in the init method:

System.setProperty("javax.xml.soap.MessageFactory",
"com.sun.xml.messaging.saaj.soap.ver1_1.SOAPMessageFactory1_1Impl");