簡體   English   中英

如何更改 WSDL soap 地址位置,尤其是 url 的上下文部分?

[英]How to change WSDL soap address location , in particular the context part of the url?

在這里,我使用 java first 方法來創建 Web 服務。

我通過在 JBOSS EAP 6.0 中使用 Endpoint api Endpoint.publish(address,SampleWebService)公開了一個使用 JAX-WS 的 Web 服務。

無論我在上述發布方法中為地址字段提供什么值,都無關緊要,即,我沒有看到它的影響。 上面的SampleWebService是我的 Web 服務實現類。 部署war文件后,我將在以下位置生成WSDL文件。

%JBOSS_HOME%/standalone/data/wsdl/MyProjectName-1.0-SNAPSHOT.war

上面生成的WSDL文件包含soap:address location = " http://localhost:8080/MyProjectName-1.0-SNAPSHOT/SampleWebService?wsdl "/>

@webService(serviceName="SampleWebService")
public class SampleWebService {
    //Implementation specific logic
}

有什么方法可以改變上下文,即在soap地址位置使用MyProjectName而不是MyProjectName-1.0-SNAPSHOT,這樣最終的soap地址位置將如下所示

soap:address location = " http://localhost:8080/MyProjectName-1.0-SNAPSHOT/SampleWebService?wsdl "/>

回答我自己的問題。

我想要的只是更改根上下文名稱,以便我可以提供自己的名稱而不是默認的戰爭文件名(戰爭文件的完整名稱,不包括 .war 擴展名)

為了更改 war 文件的根上下文,我需要在 jboss-web.xml 文件中指定上下文名稱,該文件位於我的 Web 應用程序的 WEB-INF 文件夾中。

感謝這個不斷變化的上下文根名稱帖子,它幫助我找出了我的案例的解決方案。

現在 jboss-webapp.xml 包含以下內容:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="  
      http://www.jboss.com/xml/ns/javaee  
      http://www.jboss.org/j2ee/schema/jboss-web_5_1.xsd">
    <context-root>MyProjectName</context-root>
</jboss-web>

上述更改幫助我獲得了所需的soap 地址位置url。 即, <soap:address location="http://localhost:8080/MyProjectName/SampleWebService?wsdl" />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM