我在OpenShift上部署了一个Web服务,方法是使用@WebService注释一个类,使用@WebMethod注释一个公共方法 . 然后,我在WildFly8容器中部署了该类,服务器启动了该服务 . 为了能够访问WSDL文件,我必须在WEB-INF文件夹中创建一个文件“jboss-web.xml”并更改context-root .
现在我能够访问WSDL文件,但不能访问服务本身 . 问题出在wsdl文件的这一行:
<wsdl:service name="PlotterService">
<wsdl:port binding="tns:PlotterServiceSoapBinding" name="PlotterPort">
<soap:address location="http://127.8.173.1:8080/Plotter"/>
</wsdl:port>
</wsdl:service>
地址位置设置为内部IP,应替换为我的应用程序的URL . 我怎样才能做到这一点?我能够修改的唯一文件是我在开头注释的类 .
1 回答
我设法解决了这个问题:
Openshift默认没有Web服务设置,因此我们需要修改服务器配置 . 要执行此操作,请在编辑器中打开.openshift / config / standalone.xml(此文件可能已隐藏)并进行以下添加:
如果webservices子系统未在元素下配置如下,请复制以下内容并替换webservices子系统以启用和配置Web服务: