問題タブ [spring-ws]

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.

0 投票する
7 に答える
47853 参照

java - Spring-WS クライアントでカスタム HTTP ヘッダーを動的に設定する

Spring-WS を使用する場合、クライアント側で動的にカスタム HTTP ヘッダー (SOAP ヘッダーではない) を設定するにはどうすればよいですか?

0 投票する
3 に答える
12971 参照

java - Spring Soapインターセプターはどのようにしてメッセージの内容を変更できますか?

エンドポイントに送信される前にSoapメッセージの内容を変更するWebサービスのインターセプターを作成しようとしています。クライアントが要素の値が1のメッセージを送信した場合、その要素を2に変更して、メッセージがエンドポイントに到着したときに、クライアントが2ではなく2を送信したように見せたいと思います。 1.これが私を惑わすような難しい仕事なのか、それとも私が必要以上に難しくしている簡単な仕事なのかはわかりません。

Springインターセプターのいくつかをステップスルーしました。ただし、検証およびロギングインターセプターは、転送中のメッセージをすべて変更するわけではありません。Wss4jSecurityInterceptorは、MessageContextにいくつかのプロパティを追加します。しかし、私はそれがしていることを何も活用することができませんでした。私は迎撃機のシェルを持っています。しかし、何か価値のあることをしているものは何もありません。

私は、他の誰かがこの特定の問題をすでに解決している可能性があることを望んでいました。任意の洞察をいただければ幸いです。ありがとう。

0 投票する
1 に答える
1959 参照

java - Springでデフォルトのリクエスト/レスポンスサフィックスなしでwsdlを生成するには?

Web サービスのメソッドの定義はサードパーティから提供されました。私は Java クラスを作成し、maven schemagen プラグインはクラスから見事に xsd を生成します。次に、wsdl を公開するために spring-ws-servlet などをセットアップします。WSDL11Definition クラスのみが要求と応答のサフィックスを必要とします....サフィックスがありません。メソッド名は、getAttribute、setAttribute、refreshDetails、manageAttribute などです。これを回避する方法を知っている人はいますか? これを行うために参照できる他の wsdl 定義クラス、またはおそらく他のプロバイダー (defaultWsdl11Definition が使用する suffixProviders の代わりに) はありますか?

どんな助けでも大歓迎です!

0 投票する
2 に答える
3733 参照

web-services - Spring-WS 1.5 は Spring 3 で使用できますか?

Spring-ws 1.5.9 は Spring 2.5 に依存します (pom に基づく)。クラスローディングの問題に遭遇することなく、Spring 3 で使用できますか。一部のパッケージが 2 つの間で一致することはわかっていますが、それらの Spring 3 jar を含めないことはできますか? これに関する公式の言葉が見つからないようです。

0 投票する
2 に答える
6464 参照

java - Spring-WS:WSDLのマルチノード分類法を使用したSimpleWsdl11Definition

Spring-WS 1.5:SimpleWsdl11Definitionを使用すると、XML構成でWSDLを(Spring-WSドキュメントから)簡単に公開できます。

次の場所でWSDLを公開するURLを生成します。

SimpleWsdl11Definition Bean ID + ".wsdl"は、デプロイされると、WSDLのURLのリーフになります。これは、単一ノードの分類法を対象としています。

マルチノード分類法を持つWSDLの公開をサポートする必要があります。

例えば:

これはSpring-WSでどのように達成されますか?Bean ID属性では「/」文字を使用できないため、WSDLURLに影響を与える方法は何か疑問に思います。

注:生成されたWSDLを使用することは、たとえばDefaultWsdl11Definitionの場合、オプションではありません(後方整合性の理由から)。SimpleWsdl11Definitionと同様に、WSDLのリクエストを静的WSDLにマップしたいと思います。

ありがとう。

0 投票する
8 に答える
14913 参照

java - Spring Web サービス - 例外スキップ ExceptionResolver

SOAP サービスを使用しています。XML 要素に不適切な入力を指定すると、適切な入力で要求と応答が期待どおりに機能します。

リクエスト本文:

私の例外リゾルバーが呼び出されます。このリゾルバーは例外リゾルバーの単なる実装であるため、例外マッピングはなく、抽象メソッドに System.out がいくつかあるだけです

ただし、次のようなリクエストを送信すると:

私のリゾルバーはまったく実行されません

ルート デバッグ レベルを持つように log4j をセットアップすると、次の出力が表示されます。

2010-08-09 10:30:01,900 [スレッド:http-8080-2] DEBUG [org.springframework.ws.transport.http.WebServiceMessageReceiverHandlerAdapter] - 着信を受け入れる [org.springframework.ws.transport.http.HttpServletConnection@c46dcf ] から [ http://localhost:8080/myws/MyWebServices/] へ エラー: 「要素タイプ "ns:MESSEDUPELEMENT" は、一致する終了タグ "" で終了する必要があります。」2010-08-09 10:30:01,920 [スレッド:http-8080-2] DEBUG [org.springframework.ws.transport.http.MessageDispatcherServlet] - リクエスト org.springframework.ws.soap.saaj.SaajSoapMessageException を完了できませんでした:エンベロープにアクセスできませんでした: 指定されたソースからエンベロープを作成できません: ; ネストされた例外は com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl です: 指定されたソースからエンベロープを作成できません: org.springframework.ws.soap.saaj.support.SaajUtils.getSaajVersion(SaajUtils.java:162) at org org.springframework.ws.soap.saaj.SaajSoapMessage.(SaajSoapMessage.java: org.springframework.ws.soap.saaj.support.SaajUtils.getSaajVersion( SaajUtils.java:159) ... 24 以上 原因: javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: 要素タイプ "smm:smm-aid" は、一致する終了タグで終了する必要があります " "。com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:719) で com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl. java:313) com.sun.xml.internal.messaging.saaj.util.transform.EfficientStreamingTransformer.transform(EfficientStreamingTransformer.java:393) で com.sun.xml で。internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:102) ... 27 以上 原因: org.xml.sax.SAXParseException: エレメント タイプ "smm:smm-aid" は、一致する終了タグ "". com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java: 522) org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333) com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:636) com .sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:707) ... 30 以上 createEnvelope(EnvelopeFactory.java:102) ... 27 以上 原因: org.xml.sax.SAXParseException: 要素タイプ "smm:smm-aid" は、一致する終了タグ "" で終了する必要があります。com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java: 522) org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333) com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:636) com .sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:707) ... 30 以上 createEnvelope(EnvelopeFactory.java:102) ... 27 以上 原因: org.xml.sax.SAXParseException: 要素タイプ "smm:smm-aid" は、一致する終了タグ "" で終了する必要があります。com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java: 522) org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333) com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:636) com .sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:707) ... 30 以上 要素タイプ「smm:smm-aid」は、一致する終了タグ「」で終了する必要があります。com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java: 522) org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333) com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:636) com .sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:707) ... 30 以上 要素タイプ「smm:smm-aid」は、一致する終了タグ「」で終了する必要があります。com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231) com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java: 522) org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333) com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:636) com .sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:707) ... 30 以上

ここでは、Spring が例外の可能性を見逃しており、それをラップしていないように見えますが、そのような基本的なエラー状態がキャッチされない可能性は低いと思われます。この問題の根本を見つけるのを手伝ってくれる人はいますか?

web.xml と servlet.xml も含めます。

web.xml:

サーブレット コンテキスト:

0 投票する
1 に答える
1136 参照

tomcat - Spring WS Osgi サンプル

私たちは現在、職場でOSGIを研究しており、適切なアプリケーションサーバー(tomcat / jetty)でspring dmおよびspring-wsを使用してその使用に関する概念実証を提供する必要があります.誰かが例、チュートリアル、またはできるリンクを持っていますか私の研究に役立ちますか?

私はここ数日、Spring DM とともに OSGI に spring ws を実装する方法に関するサンプルを探していました。

どんな助けでも本当に感謝します。

それまでの間、Spring DM in Action book を待っています。

本当にありがとう。

ガース

0 投票する
3 に答える
7458 参照

java - SpringWebServiceTemplateおよびJaxb2Marshallerを使用する場合のスレッドセーフ

私はSpringWebServiceTemplateをプログラムでWebサービスクライアントとして使用しています。つまり、Springコンテナをインスタンス化することはありません。マーシャリング/アンマーシャリングにJaxb2Marshallerを使用しています。私のアプリケーションでは、SaajSoapMessageFactoryの単一のインスタンスとJaxb2Marshallerの1つのインスタンスを作成します。また、WebServiceTemplateの単一のインスタンスを作成し、以前に作成したSaajSoapMessageFactoryとJaxb2Marshallerのインスタンスを割り当てます。

私が作成したWebServiceTemplateはマルチスレッドで使用されます。つまり、複数のスレッドが同時にmarshalSendAndReceiveを呼び出すことができます。私の質問は-私の構成スレッドは安全ですか?Jaxb2Marshallerが心配です。javadocによると、Jaxb2Marshallersは必ずしもスレッドセーフではありません。Jaxbコンテキストを再初期化せずに、スレッドセーフな方法でJaxb2Marshallerを使用するにはどうすればよいですか?

余談ですが、スプリングリファレンスのspring-ws構成の例を見ると、Jaxb2Marshallerはスレッドセーフであると思いますが、Javadocはそれと矛盾しているようです。

0 投票する
1 に答える
3070 参照

java - エンドポイント マッピングが見つかりません

こんにちは、最初の Web サービスを作成しました。うまくいきますが、今は特別な状況を解決する必要があります。最初の状況は、Spring Web Services - Exception Skipping ExceptionResolverで言及されていますが、私を助けることができる解決策はありません。

2 番目の状況は、クライアントが正しい SOAP メッセージを送信してきたが、たとえば send me: のように名前空間を間違えている xmlns:urn="urn:org:samples:spring:ws:schemas:calculatorblabla" が、正しい名前空間は xmlns:urn="urn1:org:samples:spring:ws:schemas:calculator" です。したがって、クライアントが間違った名前空間でメッセージを送信した場合、彼はこれらの間違いを犯したメッセージを受信しません:

<html><head><title>SpringSource tc Server/6.0.20.C - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 404 - </h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u></u></p><p><b>description</b> <u>The requested resource () is not available.</u></p><HR size="1" noshade="noshade"><h3>SpringSource tc Server/6.0.20.C</h3></body></html>

これらの状況を SoapUI でテストしました

サーバーはメッセージを受信しましたが、正しいエンドポイントを見つけたため、応答を送信しませんでした[2010-08-26 14:38:19] Accepting incoming [org.springframework.ws.transport.http.HttpServletConnection@1700f3d] at [http://localhost:8080/calculator] [2010-08-26 14:38:19] Received request [SaajSoapMessage {urn:org:samples:spring:ws:schemas:calculatorblabla}calculatorRequest] [2010-08-26 14:38:19] Looking up endpoint for [{urn:org:samples:spring:ws:schemas:calculatorblabla}calculatorRequest] [2010-08-26 14:38:19] Endpoint mapping [org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMapping@ae2481] has no mapping for request [2010-08-26 14:38:19] No endpoint mapping found for [SaajSoapMessage {urn:org:samples:spring:ws:schemas:calculatorblabla}calculatorRequest] [2010-08-26 14:38:19] Successfully completed request

そのため、クライアントが間違った名前空間でメッセージを送信したときに、xsd で検証されていない xml を送信したときに同様の障害メッセージを書き込む必要があります。助けてくれてありがとう、間違いをごめんなさい、私の英語はかなり下手です

0 投票する
1 に答える
357 参照

java - Spring ws : AxiomAttachment のサイズにアクセスする方法

添付ファイルを取得するために、エンドポイントに次のコードがあります。

しかし、添付ファイルは AxiomAttachment (私は AxiomSoapMessageFactory を使用しています) を実装しており、このクラスによると、「Axiom は添付ファイルのサイズの取得をサポートしていません。」

添付ファイルのサイズを取得するにはどうすればよいですか?

私はこれを使用して、outofMemory を防ぐための添付ファイルとして大きなファイル (10 か月以上) を送信できるようにします (より良いアイデアをいただければ幸いです - 私はすでに mtom spring サンプルを試しましたが、重いファイルでは機能しません)。 (outOfMemory も) AxiomSoapMessageFactory を指定しても)。

spring wsで重いファイルを処理するためのより良い解決策(spring ws mtomサンプルは機能しません..)を受け入れます