编程语言
首页 > 编程语言> > java – WebService在WebLogic 10.3中不“可见”

java – WebService在WebLogic 10.3中不“可见”

作者:互联网

我目前正试图让我的应用程序提供Web服务.
该应用程序使用spring并在Weblogic 10.3实例下运行.

我按照“合同优先”的方法构建了web服务.
所以我基本上有一个生成的WS-Interface,我的接口实现,定义servlet绑定的web.xml和定义端点的sun-jaxws.xml.
(或多或少类似于此:http://www.mkyong.com/webservices/jax-ws/deploy-jax-ws-web-services-on-tomcat/).

现在,在将我的应用程序部署到weblogic后,实际上一切都很好.
我可以在我的浏览器中输入WebService的URL,我看到了WSDL,我可以调用它的方法.
如果不是一个小的化妆品事实:
在WL的部署概述中,当我单击部署时,它会显示一个WebServices列表…它是空的.所以我的网络服务没有列在那里.

那么,任何人都可以告诉我,我必须做些什么才能让网络服务出现在那里?

解决方法:

虽然为JAX-WS提供Web服务描述符并不是必不可少的,但Weblogic有时无法识别Web服务(无法找到原因)

以下是我为使其工作所做的工作.在Web.xml中将WebService实现类添加为Servlet

<?xml version='1.0' encoding='UTF-8'?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" id="WebApp_ID">
  <display-name>MyWebService</display-name>
  <servlet>
    <servlet-name>serviceServlet</servlet-name>
    <servlet-class>com.aneesh.WebServiceImpl</servlet-class>
    <load-on-startup>0</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>serviceServlet</servlet-name>
    <url-pattern>/Service</url-pattern>
  </servlet-mapping>
</web-app>

并添加webservice描述符(webservices.xml)

<?xml version='1.0' encoding='UTF-8'?>
<webservices xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1">
  <webservice-description>
    <webservice-description-name>MyWebService</webservice-description-name>
    <port-component>
      <port-component-name>MyWebServiceSoapPort</port-component-name>
      <wsdl-port xmlns:an="http://www.aneesh.com/service">an:MyWebServiceSoapPort</wsdl-port>
      <service-endpoint-interface>com.aneesh.WebService</service-endpoint-interface>
      <service-impl-bean>
        <servlet-link>serviceServlet</servlet-link>
      </service-impl-bean>
    </port-component>
  </webservice-description>
</webservices>

标签:java,spring,web-services,web-xml,weblogic-10-x
来源: https://codeday.me/bug/20190709/1410303.html