2017-09-04 6 views
0

ここでは、私はWebサービスを作成するためにJavaの最初のアプローチを使用しています。どのようにWSDLのSOAPアドレスの場所、特にURLのコンテキスト部分を変更するには?

JBOSS EAP 6.0でエンドポイントAPI Endpoint.publish(address,SampleWebService)を使用して、JAX-WSを使用してWebサービスを公開しました。

上記のパブリッシュ方法でアドレスフィールドに指定する値が何であっても、それは問題ではありません。つまり、その影響は見られませんでした。上記の SampleWebServiceは私のWebサービス実装クラスです。 warファイルをデプロイした後、次の場所にWSDLファイルが生成されます。

%のJBOSS_HOME%/スタンドアロン/データ/ WSDL/MyProjectName-1.0-SNAPSHOT.war

上記生成されたWSDLファイルは、石鹸を含有する:アドレス場所= "http://localhost:8080/MyProjectName-1.0-SNAPSHOT/SampleWebService?wsdl" />

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

私は、Soapアドレスの場所で、MyProjectName-1.0-SNAPSHOTの代わりにMyProjectNameを持つようにコンテキストを変更することができますので、最後のSOAPアドレスの場所は次のようになります。

石鹸:アドレス場所= "http://localhost:8080/MyProjectName-1.0-SNAPSHOT/SampleWebService?wsdl" />

答えて

0

自分の質問に答えます。

私が望んでいたすべては私が 自分の名前の代わりに、デフォルトのwarファイル名(.war拡張子を除く戦争 ファイルの完全な名前)

を提供できるようにルートコンテキスト名を変更することですwarファイルのルートコンテキスト、つまり私のwarファイル名を変更するには、webアプリケーションWEB-INFフォルダにjboss-web.xmlファイルが必要でした。私の望む名前を指定することができます。

このchanging context root nameのおかげで、私の場合の解決方法を理解するのに役立ちました。上記の変更が必要な石鹸アドレス場所のURLを取得で私を助けている

<?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> 

は今のjboss-webapp.xmlは、次の内容が含まれています。 & ltsoap:address location = "http:// localhost:8080/MyProjectName/SampleWebService?wsdl" />

関連する問題