代码不是我写的,我只是被要求帮助找出问题。我对肥皂一无所知。
从WSDL生成的WebService运行在旧的Glassfish v2上。
没问题,服务在portName和serviceName端点上都是公开的。
然后将该应用程序移动到Glassfish v3。现在只有portName端点可访问。serviceName并非如此。
有没有人有解决这个问题的5-6步指南。我没有心情费力地读完另一个50页的Oracle文档,承诺帮助解决问题,然后……没有。我已经徒劳无功地涉水过网太久了,坦率地说,我已经无计可施了。
发布于 2013-03-21 23:52:57
在实现SOAP类中,将wsdlLocation添加到@WebService注释中。删除sun-web.xml和sun-jaxws.xml,并从web.xml中删除侦听器com.sun.xml.ws.transport.http.servlet.WSServletContextListener。最后,添加一个基本的glassfish-web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app error-url="">
<context-root>/</context-root>
<class-loader delegate="true"/>
<jsp-config>
<property name="keepgenerated" value="true">
<description>Keep a copy of the generated servlet class' java code.</description>
</property>
</jsp-config>
</glassfish-web-app>在此之后,服务器现在自己定位服务,并将它们放在WebService注释指定的位置。
https://stackoverflow.com/questions/15548702
复制相似问题