問題タブ [cxf]
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.
cxf - Web サービスでパスを確認する方法
cxf webservices を使用しています。サービス パス @Path'/summary/abc/{xyz}/name/{login}' があります。
誰かが間違ったURLを与えたときにカスタムエラーメッセージを生成したい
「/summary/ab/{xyz}/na/{login}/」
java - cxf.jaxrs: JAXRSServerFactoryBean 使用時の IllegalArgumentException
単体テストで JAXRS テスト サービスをセットアップするときに、次の問題が発生しました。これはコードです (AbstractJUnit4SpringContextTests から派生したテスト クラスから取得)。
XML テスト ファイルをサービスにフィードしています。CXF は不用意に xml を javax.xml.bind.JAXBElement にラップしようとし、サービスを呼び出し、(リフレクション API で) IllegalArgumentException で失敗します。サービスはもちろん JAX-RS 固有の要素を受け入れず、以前に XSD で定義した SearchRequest 要素。
ただし、次の行を春のコンテキストに挿入すると、すべて問題ありません。
他の誰かがこれを見ましたか?
java - ws-securityで提供されるユーザーまたは識別子の読み取り方法
最新のApacheCXFを使用してWebサービスを作成しています。を使用してws-securityを構成しorg.apache.cxf.ws.security.wss4j.WSS4JInInterceptorました。私の場合、クラスのメソッドをpasswordCallbackClass呼び出すことでユーザーまたは識別子にアクセスできます。getIdentifier()org.apache.ws.security.WSPasswordCallback
セットアップ全体にスプリングも使用しています。
コード内の他の場所で識別子にアクセスする方法を知りたいですか?ThreadLocal私は私ので使用することを考えることができましたpasswordCallbackClassか?別の方法は、すべてのサービスメソッドパラメータで識別子プロパティを定義することですが、それはクライアントが識別子を2回渡す必要があることを意味します。1つはセキュリティブロックで、もう1つはサービス呼び出しでですか。
編集
sayHi私のサービスクラスは次のようになり、メソッドの識別子を読み取る必要があります。
私のパスワードコールバックメソッドは、識別子を取得できる場所です。
java - Jetty vs CXF / どっちを選ぶ?
私はJavaの世界にかなり慣れていないので、多かれ少なかれ同じことをしている、またはしていない数十のライブラリから選択する美しさにかなり圧倒されています。
Jetty と CXF も同様です。幅広いトランスポートとプロトコルのサポートが組み込まれている Web サービス スタックを探しています。
私は、CXF がより最近のプロジェクトであり、新しいソフトウェア プロジェクトに適しているという印象を受けました。特に、WS-* のようなさまざまな異なるプロトコルや標準と通信する必要があるアプリケーションに関しては。
これらのフレームワークが互いにどのように異なっているかについて、ご意見をお聞かせいただけますか?
さまざまなプロトコルと標準をより幅広くサポートしているのはどれですか?
トランスポート、認証、認可、シリアライゼーションの側面をアプリケーションロジックからどれだけうまく隠しているかなど、その設計に関してどちらを好みますか?
どんな種類の答えでも大歓迎です!
乾杯、アレックス
java - JAX-WS で動的クライアントを使用する利点
生成されたクライアント クラスを使用するのではなく、JAX-WS サービスで動的クライアントを使用する利点は何ですか? 短所は何ですか?
**私の特定のケースでは、Apache CXF を使用していますが、他のどのライブラリが「動的」クライアントを許可しているかはわかりません。
-これを追加する必要はないと思っていましたが...私は明らかではない(私は知っています...主観的な)利点を探しています。生成されたクラスを使用しないことの利点は、クラスを生成する必要がないことだと他の誰かに言われる必要はありません。
cxf - JaxWSProxyFactoryBean共有HTTPセッション
私たちは、CXFフレームワークによって提供されるJaxWSProxyFactoryBeanを使用してWebサービスを呼び出す1つのプロジェクトに取り組んでいます。コードでAPIを直接使用するのではなく、SPRING構成を使用してクライアントを作成しています。また、セッションがWSクライアントによって維持されるようにmaintain_sessionプロパティを設定しています。
<jaxws:client id = "userAuthenticationServiceClient1" address = "$ {application.deployment.url} / UserAuthentication" serviceClass = "com.authentication.webservice.IUserAuthenticationService" abstract = "true"> <jaxws:properties> <entry key = " javax.xml.ws.session.maintain "> <value type =" java.lang.Boolean "> true </ value> </ entry> </ jaxws:properties> </ javws:client>
しかし、セッションはさまざまなWebサービスインスタンス間で維持されていないことがわかりました。より明確にするためにwc1、wc2、wc3のようなプロキシクライアントがある場合。wc1で呼び出されるすべての操作にはセッションがあり、wc2は新しいセッションを作成します。すべてのwsクライアントがセッションを共有するために必要な設定を誰かに教えてもらえますか?
java - URLのタイプをmimeする方法
cxf を Web サービスとして使用しています。要求されたデータの xml および json 形式の出力をサポートしています。コードで何らかの例外が発生した場合、エラー コードを xml または json 形式で返したいと考えています。しかし、いつjsonとxmlを与えるべきかわかりません。それは、ユーザーが要求した要求されたURLに依存します。
例
@Path("/reports/ad-view/loginId/{loginId}/publisher/")
java - ローカルホストでcxfサービスを開始し、wsdlで外部アドレスを返す方法は?
私はapacheの背後にあるcxfとjettyを使用して、soapを介してWebサービスを公開しています。目標は、すべての場合にhttp:// localhost:9000でjettyを開始し、それにapacheプロキシを設定することですが、自動生成されたwsdlに、実行している環境に適したsoap:addressを表示させることです(例:http://api.testing .example.com、http: //api.uat.example.com、https : //api.example.com)。生成されたwsdl2java*ServiceクラスはwsdlのURLを受け入れ、それは開始する「場所」と、soap:addressで返される文字列の両方として機能する必要があるようです。これは構成可能である必要がありますが、明確ではないため、アドバイスをいただければ幸いです。
もう少し明確に-Springを介してServiceクラスのコンストラクターに「WsdlURL」を渡します(これまでのところ、http:// localhost:9000のみが機能します)。この問題の解決策は、コードではなく、cxf.cml、cxf-.xml、spring、またはその他の構成ファイルのいずれかで構成を変更する必要があります。このパラメーターは、使用している環境に基づいて変更されるためです。デプロイされました。
grails - オブジェクトリストを返すgrails Webサービス
grails & cxf grails プラグインを介して Web サービスを公開しようとしています。
これは Web サービスのスケルトンです。
メソッド「singleIssue」は正しく機能しますが、メソッド「issueList」は jaxb マーシャル例外をスローします
メソッドが問題オブジェクトの配列を返すようにした場合も、同様の例外が発生します
問題をさらに明確にするために:
戻り値
java - Web サービス クライアントの接続を閉じる
Web サービス (Apache cxf を使用した jax-rs) をホストする Glassfish アプリ サーバーがあります。
コードを使用してこの Web サービスを使用する Java クライアントがあります。
xサービスは実行時に何度も消費されます。x変化する可能性があります。
すべて問題ありません。コードは正常に動作し、期待どおりに動作します。
問題は、glassfish の最大接続数に達した後、サーバーが http 500 を返すことです (http サービスの下で - キープアライブ)。次に、指定されたタイムアウト秒数だけ待機してから続行します。これは、アプリが終了するまで繰り返されます。
接続を強制的に閉じる方法についてのアイデアはありますか?したがって、最大接続数の制限に達することはありませんか?
とても有難い。