1

Amazon EC2 で実行されている Jboss インスタンスに Web サービスをデプロイしました。Web サービスはローカルでは正常に動作しますが、EC2 にデプロイして /jbossws/services ページに移動すると、Web サービスのエンドポイント アドレスはパブリック DNS ではなく、ec2 インスタンスのプライベート DNS (domU-XXXX など...) になります。 (私はそれが欲しい)。

プライベート ホスト名をパブリック IP に変更して wsdl をロードしようとしました。それは機能しますが、いずれかの操作を呼び出そうとすると、HostNotFoundException が発生します。生成された wsdl に次のスタンザがあるためだと思います。

<service name='XXXService'> <port binding='tns:XXXBinding' name='XXXPort'> <soap:address location='http://domU-XX-XX-XX-XX-XX-XX.compute-1.internal:8080/xx/xx/xx'/> </port> </service>

http://domU-XX-XX-XX-XX-XX-XX.compute-1.internalは、ec2 インスタンスの内部 dns です。

wsdl は自動生成されます - 生成された wsdl に EC2 インスタンスのパブリック dns を強制的に使用させるために使用できる JAXB 注釈はありますか?

どうもありがとう -

4

1 に答える 1

0

JBoss 5.1.0 GAでは、jbossws.deployer / META-INF / jboss-beans.xmlを確認し、次の行にコメントを付けます$ {jboss.bind.address}

それは100%働いています

または、次の http://community.jboss.org/wiki/JBossWS-UserGuideを参照してください。

于 2010-11-30T12:37:55.603 に答える