2011-06-30 10 views
2

定期的にWebサービスを呼び出すGlassfish Webアプリケーションのデプロイに問題があります。基本的には、javax.xml.ws.Serviceへの呼び出しが決して戻ってこないように見えます。例外はありません。次のようにjavax.xml.ws.Serviceコンストラクタが返さない

コードは、(オブジェクト/変数名が変更された)になります

wsdlURLローカルWSDLファイルのURLオブジェクト(また、リモートでホストWSDLと試みている)であり、SERVICE_NAMEは
MyService ss = new MyService(wsdlURL, SERVICE_NAME); 

Webサービス名の文字列。

MyServiceでオブジェクトの実際のコンストラクタは単に決してこれが期待どおりに動作します私の開発マシン上でjavax.xml.ws.Service

public class MyService extends Service { 
    public MyService(URL wsdlLocation, QName serviceName) { 
     super(wsdlLocation, serviceName); 
    } 
} 

にスーパーを呼び出しませんが、 MyServiceでコンストラクタへの展開でのコール戻る。

これをRed Hat Enterprise Linux Serverリリース5.6(Tikanga)上で動作するGlassfish v3.1サーバーに導入しようとしています。

Javaのバージョンは、開発環境とデプロイメント環境の両方で1.6です。

ここで何が起こっているのか誰かが知りませんか?例外がないため、デバッグが非常に困難です。私はこれが WSDLの問題であると思うのですが、正しく理解しているかのように、javax.xml.ws.Serviceはコンストラクタの呼び出し中に何らかの解釈を行い、ハングアップの原因となっていると思います。しかし、私の開発マシンではうまくいくが、デプロイメントサーバではうまくいかないというのは非常に奇妙なようだ。

ご協力いただきありがとうございます。

答えて

0

デプロイメントマシンで使用されているプロキシが原因の可能性があります。 私は同じ問題に直面し、後でそれがプロキシ設定のためであることを理解しました。

はすなわち、スタブクラスを作成する前にプロキシを設定することについて

System.setProperty("http.proxyHost", "xxx.x.xx.xx"); 
System.setProperty("http.proxyPort", "8080"); 
MyService ss = new MyService(wsdlURL, SERVICE_NAME); 
+0

感謝を試してみてください。私は、アプリケーションを書き直して、サーバーの下ではなくサーバーの横にあるスタンドアロンのJavaアプリケーションとして実行することにしました。なんらかの理由で、コードを分離することでWebサービスが問題なく動作するようになりました。Glassfish関連の問題のようなものでした。 – Beardy

関連する問題