用Web logic 的servicegen ant 生webservice.
Part of build.XML
<target name="servicegen">
<servicegen
destEar="demoEar.ear"
warName="demoWar.war"
contextURI="demo">
<service
EJB Jar="demo.jar"
targetNamespace="http://localhost:7001/demo"
serviceName="demo"
serviceURI="/demo"
generateTypes="True"
expandMethods="True" >
</service>
</servicegen>
</target>
这个target 运行以后, 在对应目录( 例子中是当前目录) 生成了demoEar.ear 文件, 里面就包含了webservice 的配置文件, 将这个demoEar.ear 发布到weblogic 下, 即可在console 中查看到名为demo 的webservice.
这里, 如果将demoEar.ear(demoWar.war) 换成不是.ear(.war) 结尾的名字, 就会在目录下生成一个的新的目录, 而不是ear 文件, 里面的内容跟demoEar.ear 解压后完全一样.
解释:
demo.jar:ejb jar 文件, 里面应该包含能正确运行的ejb 相关信息(classes,ebj-jar.xml,weblogic-ejb-jar.xml 等)
demoEar.ear: 生成的ear 文件名称, 或者是目录名称
demoWar:ear 生成的war 文件名称, 或者是目录名称
demo:contextURI 是指生成的web application 的context 名称
serviceName:webservice 的名称