問題タブ [java-metro-framework]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - メトロとジャージーを組み合わせる
私はしばらくこれに取り組んでいましたが、私の心はどろどろになりました。
誰かがここで私を助けてくれるかどうか疑問に思っています。Metro と Jersey をサポートする Java Web サービス (Tomcat のようなものではなく、独自の HTTP サーバーを使用) を作成しようとしています。このようにして、クライアントは、SOAP であろうと REST であろうと、好きな方法で Web サービスに接続できます。
Doc/Lit wsdls と RPC/lit wsdls をサポートできるように Metro 部分をダウンさせましたが、Jersey 部分を理解するのが難しいため、REST/xml と REST/json をサポートします
また、すべてのエンドポイント メソッドが記述された 1 つのクラスがあり、他のクラスがそれを拡張するという考え方もあります。
この 2 つを組み合わせて使用したことのある人はいますか? まともな記事の方向性を教えてもらえますか、それともあなた自身の例がありますか?
ありがとう
wcf - WSIT/JAX-WS を使用した HTTP メタデータ リクエスト
.NET STS および保護された Web サービスに対して Java (Metro を使用) クライアントを実行する際に問題があります。ただし、.NET ベースのクライアントを実行すると、常に機能します。
おそらく既にご存じのとおり、JAX-WS クライアントが実行されると、(設計時に既に wsimport が実行されていても) 実行時にサービスからメタデータを要求します。ただし、このランタイム メタデータ リクエストに問題があるようです。
私が直面している問題は、メタデータの実行時要求中に、WCF サービスによってエクスポートされた一部の WSDL が原因で、mex 要求中に Java クライアントが「ハング」することです。ハングすると、RST 要求を発行するまでには至りません。
たとえば、9 つの [OperationContract] 属性があり、それが機能する場所にたどり着くことができます。しかし、10 番目のサービス メソッドを追加すると、機能しません。ただし、9 つのうちの 1 つを削除すると、機能します。組み合わせて一致させることができ、同じパターンが成立するため、特定の方法に問題がないことはわかっています。
一部の WSDL が機能し、一部の WSDL が機能しない理由について、パターンや理由を推測することはできないようです。サービスメソッドの数に制限があるとは思えません。しかし、これはエクスポートされた WSDL の「全体的な複雑さ」の問題でしょうか?
誰にもアイデアはありますか?以前にこの問題に遭遇した人はいますか?
さらに情報が必要な場合は、喜んで投稿できます。最初の投稿を扱いやすい長さに保つようにしています。
また、.NET 4 で STS とセキュリティで保護された Web サービスを実行しており、それらは WIF に基づいていることも付け加えておきます (したがって、セキュリティ設定について心配する必要はありません)。私の .NET クライアントも .NET 4 です。Java 側では、Glassfish 3 を実行する Metro 2.1 で Netbeans 6.9.1 を使用しています。Metro 2.0 で実行しても同じ問題が発生することを確認しました。
java - 実行時の Metro/JAX-WS/WSIT による WSDL リクエスト
IDE で既に wsimport を実行している場合でも、JAX-WS は実行時に SOAP エンドポイントの WSDL をフェッチします。この動作は次のとおりです: http://jax-ws.java.net/faq/index.html#wsdl_at_runtime
クライアントが実行時に取得できるメタデータの量に制限はありますか? もしそうなら、この制限を増やす方法はありますか?
IDE 内で wsimport を実行することについて言及しているわけではないことに注意してください。それはうまくいきます。特に、実行時に WSDL メタデータをフェッチすることについて話しているのです。
web-services - JAX-WS クライアントはスレッドセーフですか?
WS クライアント側ポートの初期化は非常にコストがかかるため、同じインスタンスを再利用したいと考えています。また、各呼び出しの前に BindingProvider/RequestContext に異なる値を設定したいと考えています。最初にこれを行いたいと思います:
その後、各呼び出しの前にこれを行います:
私の質問は、このコード スレッドは安全ですか? JAX-WS のドキュメントは、それがスレッドセーフではないことを示しているようです。ただ、CXFは気をつければそうらしい。特にJAX-WS とMetroがスレッドセーフでない場合、ポートまたは ws 操作へのアクセスを同期せずにスレッドセーフを確保する方法はありますか?
java - JAXWS-WSDLリクエストのタイムアウトを設定するために必要なヘルプ
Metro2.0とJ2SE5を使用しています。私が作成したアプリケーションは、コンパイル時に外部WebServiceについて認識していません。実行時に、ビジネスロジックXMLファイルに基づいて外部Webサービスを検出するため、WSDL要求を実行します。
私が書いたサンプルコードは次のとおりです。
String wsdlServiceName = ...;
String wsdlURL = ...;
Document payload = ...;
Webサービスが呼び出されると、タイムアウトは正しく機能します(dispatcher.invoke(request))
ただし、タイムアウトが設定される前にWSDLが要求され、Webサービスが応答しない場合は、接続がタイムアウトになるまでに90秒かかります。
WSDLが要求される前にタイムアウトを設定することは可能ですか?タイムアウトを設定するにはディスパッチャが必要ですが、WSDLを要求するサービスが作成された後に実行されますか?!(つまり、Service.create())
c# - JavaアプリをWCFWebサービスに接続中にエラーが発生しました
C#で記述されたWCFWebサービスを参照する単純なJavaコンソールアプリケーションをEclipseで記述しました。PCでローカルにWCFサービスをホストしているため、Javaクライアントを使用してサービスに接続できません。
WCFサービスを作成するために行った手順は次のとおりです
次のエンドポイントで「Service1.svc」を作成します。
string IService1.Hello(string sName){return "Hello" + sName + "!" ; }
サービスのWeb構成は次のとおりです。
サービスが常にポート8888を使用するように、プロパティを変更しました。
C#コンソールアプリケーションを使用してサービスをテストしました。
Javaクライアントを作成するために、次のことを行いました。
Metro(Webサーバー)にバンドルされているGlassfish 3.0.1(アプリケーションサーバー)をダウンロードしてインストールします
jdkの「bin」ディレクトリにある「wsimport」ツールを使用して、Javaクライアントアプリのサービス参照コードを生成します。サービス参照を作成するために実行した.batファイル
上記のステップ2のコードをEclipseの新しいJavaアプリケーションにコピーします。
次のようにWebサービスを呼び出すコンソールアプリで新しいJavaクラスを作成します
`
`
アプリケーションを実行しようとしたときに発生するエラーは次のとおりです。
これに関する支援は大歓迎です。ありがとう。
java - メトロ/チューブのロギングを有効にする
(Metro WS 2.0 を使用して) Web サービスの呼び出し/要求中にキャプチャされた生データのログを有効にする必要があります。
次の 2 つのプロパティを有効にしようとしましたが、ログにまったく結果がありません。
次の例では、必要な効果が得られますが、すべてのエントリが 8 回ログに記録されます。
すべてのエントリが 8 回複製されると、ログが非常に雑然とし、追跡するのに非常に時間がかかります。すべてを重複してダンプすることなく、Web サービスの呼び出し/リクエストのトレースを実現するにはどうすればよいですか?
web-services - 春/メトロ/ウェブサービスの問題
メトロスタックでSpringを使用してWebサービスを実装しようとしています。
セットアップは問題ないようですが、applicationContext.xml でエラーが発生します。
cvc-complex-type.2.4.c: 一致するワイルドカードは厳密ですが、要素 'wss:binding' の宣言が見つかりません。
公開された例は古く、Spring 3 ではバインディングを別の方法で定義する必要があると思います。
バインディングをどのように構成する必要がありますか、または説明はどこにありますか。
wcf - Visual Studioは、UsernameTokenポリシーを含むWebサービスを利用できません
Visual Studio 2010でWebサービスへの参照を追加しようとするとエラーが発生します。Webサービスは、JAX-WS / Metro / GlassFishスタックを使用してJavaで実装され、UsernameTokenポリシーが含まれています。これがWSDLからの抜粋です。
Visual StudioでこのWebサービスにサービス参照を追加しようとすると、次の警告が表示されます。
Visual Studioがアサーションをインポートできないのはなぜですか?
PS SoapUIツールを使用して、Webサービスをインポートしてテストすることができました。
glassfish - Glassfish で Metro を無効にするにはどうすればよいですか?
メトロを無効にするようにglassfish 3に指示できる方法はありますか?現在、ライブラリとして CXF を使用しています。CXF は機能していますが、独自の Web サービスも公開しています。
これらの追加の Web サービスを公開しないように、glassfish に指示できる方法はありますか? これらは、@WebService によってアノテーションが付けられたベナンです。
これを含む sun-web.xml を宣言しようとしましたが、まだ機能していません
Glassfish 3 i は自動的に公開し、Web サービスのインスタンスを 1 つではなく 2 つ作成しています。
どうもありがとう