問題タブ [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 - JAX-WSでのWS-Securityの使用
私が持っているのはemacsだけだとしましょう。JAX-WSでWS-Securityを使用するWebサービスを実装したいと思います。Netbeansのようなツールに依存しないクライアントを実装する良い例を知っている人はいますか?
ありがとう
glassfish - Glassfishサーバーのハングの問題の分析に役立ちます
約20のjax-wsメトロWebサービスを備えたGlassfishサーバーを実行しています。サーバーの仕様は、8GBのRAMを搭載したCore2Duoです。すべてのWebサービスに単一のhttpリスナーを使用しています。開発はTrueに設定されています。要求スレッド数は2、アクセプター数は1です。最小および最大ヒープサイズは1GBで、PermGenは512MBに設定されています。サービスはHibernateレイヤーを介してOracleデータベースにアクセスし、サービス間には多くのサービス間呼び出しがあります。フロントエンドはASP.Netです。私たちの問題は、4〜5人のユーザーがしばらくの間(1時間)アプリケーションに同時にアクセスしようとすると、Glassfishサーバーがハングし、CPUが100%になりますが、メモリ使用率は約10〜11%です。この問題をデバッグする方法についてのポインタを見つけることができません。場合によっては、ログファイルでjava.lang.OutofMemory例外:PermGenSpaceが発生します。しかし、これも毎回ではありません。つまり、多くの場合、ログファイルはハングしてもエラーになりません。また、Perm Gen Spaceを増やそうとすると、GlassFishサーバーが起動しません。この問題を診断し、解決に向けて進む方法について、いくつかの方向性が必要です。使用しているGlassFishのバージョンはv2.1です。次のことがわかります。1。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。多くの場合、ログファイルはハングしてもエラーになりません。また、Perm Gen Spaceを増やそうとすると、GlassFishサーバーが起動しません。この問題を診断し、解決に向けて進む方法について、いくつかの方向性が必要です。使用しているGlassFishのバージョンはv2.1です。次のことがわかります。1。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。多くの場合、ログファイルはハングしてもエラーになりません。また、Perm Gen Spaceを増やそうとすると、GlassFishサーバーが起動しません。この問題を診断し、解決に向けて進む方法について、いくつかの方向性が必要です。使用しているGlassFishのバージョンはv2.1です。次のことがわかります。1。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。また、Perm Gen Spaceを増やそうとすると、GlassFishサーバーが起動しません。この問題を診断し、解決に向けて進む方法について、いくつかの方向性が必要です。使用しているGlassFishのバージョンはv2.1です。次のことがわかります。1。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。また、Perm Gen Spaceを増やそうとすると、GlassFishサーバーが起動しません。この問題を診断し、解決に向けて進む方法について、いくつかの方向性が必要です。使用しているGlassFishのバージョンはv2.1です。次のことがわかります。1。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。この問題を診断し、解決に向けて進む方法について、いくつかの方向性が必要です。使用しているGlassFishのバージョンはv2.1です。次のことがわかります。1。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。この問題を診断し、解決に向けて進む方法について、いくつかの方向性が必要です。使用しているGlassFishのバージョンはv2.1です。次のことがわかります。1。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。httpリスナーを追加すると(4〜5サービスごとに1リスナー)、障害時間が長くなりますが、あまり効果はありません。2. SOAP-UIを使用して重いサービスの一部を(1つずつ操作で)呼び出すと、多数のスレッドを同時に実行するとハングの問題が発生します。(例:8-10スレッド)3。SOAP-UIを使用して呼び出す場合、サービス操作(他のサービスを呼び出さない)がハングすることはめったにありませんが、他のサービスを呼び出すサービスは頻繁にハングします。
jaxb - Java 1.6_03 と Java 1.6.0_13 以降の JAXB
クラスで List 型のフィールドをマップしようとしていますが、この目的で XmlAdapter を使用しています。
これは Java 1.6.0_13 以降で正常に動作します。Java 1.6.0_03 では、classCastException を取得しています。B をリストにキャストできません。
このコードが旧バージョンの JDK で機能しない理由がわかりません。
java - JAXB 2 RI の XJC シンプルモードがコレクション名を変更するのはなぜですか?
JAXB シンプル バインディング モードでは、コレクション名が複数形の「バージョン」に変更されます。たとえば、「additionalData」は「additionalDatas」になります。この動作を変更する解決策はありますか? XSD フィールド名と同じ Java フィールド名とメソッド名が必要です。私のバインディングファイル:
java - JAX-WS エンドポイントが XML 文字列を部分的にエスケープするだけ
String に変換された XML ドキュメントをすべて返す多くのメソッドを持つ JAX-WS エンドポイントがあります。
これは Sun Java System Application Server 9.1 Update 2 でしばらくの間正常に機能していましたが、新しいサーバーにデプロイする必要があります。
1 つの小さな問題を除いて、問題なく Glassfish 3.0.1 にデプロイされました。元の応答例の抜粋:
新しいサーバーでは、次のように返されます。
ほぼ同じですが、左山括弧だけがエスケープされ、右山括弧はエスケープされません。
直接の HTTP POST リクエストを使用してこれをテストしたので、クライアント コードによって破壊されていないことがわかっています。
サーバーをGlassfish 3.1に再度アップグレードしましたが、含まれているWebサービスライブラリに問題があると思っていましたが、うまくいきませんでした。私のアプリケーションは、glassfish の Web サービス サポートに完全に依存しています。独自の WS または XML ライブラリは含まれていません。
エンドポイントは、基本的に次のように定義されます。
サービスの消費者としてそれを観察したこの投稿者からの参照を除いて、この問題を抱えている人を他に見つけることができませんでした。
これは公開されたサービスであるため、消費者がクライアントを更新してこれを処理できることに依存することはできません。興味深いことに、生成された Java クライアントを使用する既存のテスト インターフェースは問題ないように見えますが、これに頼ることはできません。
誰かがこれに遭遇し、それを解決できましたか? WS フレームワークにフックして、回避策として独自のエスケープを行う方法はありますか?
前もって感謝します。
java - TomcatWebアプリケーションの実稼働環境とテスト環境のプロパティ
Webアプリケーション(tomcat上のMetro Webサービス)があり、リモートシステムにアクセスするためのプロパティを処理する必要があります。
もちろん、テスト環境と本番環境ではプロパティが異なります。
WARファイルを使用してプロパティファイルをデプロイすることもできますが、これには、アプリケーションのデプロイ後に手動の手順が必要になります。(展開後の編集)
他のプロジェクトでは、プロパティファイルが変更されないように、デプロイされたWebアプリケーションの「上」のディレクトリにプロパティファイルを配置しましたが、これが適切な設計かどうかはわかりません。
Tomcat Webアプリケーションでサーバー固有のプロパティを処理する「最もクリーンな」方法はどれですか?
wsdl - ローカルWSDLファイルを使用したMetroクライアントの生成
以前にwsimportを使用してMetroクライアントを生成しましたが、その場合、WSDLはhttps経由でアクセスされました。私のコンマは次のようになりました:
そして、すべてがうまくいきました。現在、クライアントを生成しようとしていますが、WSDLファイルのローカルコピーしかありません。私のプロジェクトディレクトリは次のように設定されています(c:\ Devel内):
wsimport.batファイルは次のようになります。
これはMetroGuideの例に基づいていますが、-pオプションはありません(http://metro.java.net/guide/Developing_client_application_with_locally_packaged_WSDL.html)。ただし、batファイルを実行すると、コマンドの無限ループがコンソールに出力されます。例えば
誰かが私が間違っていることを指摘できますか?
アップデート
絶対パスを使用してみました(そして、パラメータの順序を無駄に並べ替えました。それでも、無限のコマンドコンソールの出力が表示されます。
soap - SOAP サービス: WS-Addressing ヘッダーがありません
問題なく展開できる Netbeans SOAP サービスと Silverlight クライアントがあります。
Silverlight からサービスを呼び出すと、(Silverlight で) 次のようになります。
クライアントがサービスを呼び出した後、GlassFish v3 ドメインは次の問題 I fail to decipher で応答します:
私はMetro 2.1を使用していますが、かなりグーグルで調べた後、問題が何か関係があるのではないかと思います...
サービスの wsdl を見ることができるので、実装の問題ではないと思います。しかし、その警告のスタックは Thread クラス oO?
光を当てるのを手伝ってください。私はすでにこのクライアントで動作するいくつかのEclipse SOAPサービスを持っていますが、Netbeans、GlassFish、Metroの経験がなく、何が原因なのかわかりません...
java - Webサービス応答の解析の問題(Metro / JAXB)
以前にWSDLからMetro/JAXBクライアントを生成しましたが、SOAP/XMLとの間のJavaクラスのマーシャリング/アンマーシャリングは問題なく機能しました。新しいクライアントを生成しましたが、マーシャリング解除の問題があるようですが、その理由はわかりません。WSDLは非常に大きく(> 27,000行)、大文字と小文字を除いていくつかの要素名が同じであるため、-B-XautoNameResolutionを使用する必要がありました。
私はこのメソッド/操作を実行しようとしています:
このメソッドは、サブスクライバーデータとサブスクライバーの総数を返します。私の電話は次のようになります。
結果オブジェクトでNullPointerExceptionが発生します。SOAP呼び出しをトレースしましたが、返されるXMLは、Result要素を含めて期待どおりです。
私はこれまでWebParam.Mode.OUTに遭遇したことがありません。呼び出しを行う前に、Holder <>インスタンスを初期化する必要がありますか?何に?
これらの要素はSOAPのGetSubscriberListResult要素にラップされていますが、インターフェイスメソッドには@ResponseWrapperで定義されている要素があるため、渡されたオブジェクトにマーシャリングされないことを期待していました。何か他のことをする必要があるのでしょうか。
アドバイス/ヘルプは大歓迎です!
java - メトロスタックJavaWebサービスは独自のシリアライザー/デシリアライザーを作成します
Webサービスからデータを返すときに問題が発生します。
メトロスタックを使用しています。
問題:
問題は、データにいくつかの制御文字が含まれていることです。クライアント側のコード変更も含まれるため、データを暗号化したくありません。
より良い方法は制御文字を削除することですが、文字ごとのスキャンと削除/replaceAllはパフォーマンスにいくらかの影響を及ぼします。
考えられる解決策:
私がやりたいのは、メトロがクライアントに送信する前にSOAPメッセージをインターセプトし、制御文字をチェックすることです。そして、戻る前にXMLのすべての制御文字を置き換えます。
ここにいる誰かが、戻る前に応答を傍受する方法を知っていますか?または
、制御文字を置き換えることができる独自のシリアライザー/デシリアライザーを作成するにはどうすればよいですか?
ありがとう。