Hi Dmytro,
>I am happy to hear that you are using IPF and its newest features in particular :-)
And I am happy to use it. Lightweightenss and versatility is what we
need in the new project - and IPF has it. :-)
>Do you have a {urn:ihe:iti:xds-b:2007}Document element with broken reference?
I took a valid and working ITI-41 request in soapUI having two
documents - and just removed one of the attachments in the
"Attachments" view.
This leads to this in the HTTP log:
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "POST /test/ws/iti41Service
HTTP/1.1[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Accept-Encoding:
gzip,deflate[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-Type: multipart/
related; type="application/xop+xml"; start="<
root...@soapui.org>";
start-info="application/soap+xml"; action="urn:ihe:iti:
2007:ProvideAndRegisterDocumentSet-b"; boundary="----
=_Part_112_439828433.1316621469049"[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "MIME-Version: 1.0[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "User-Agent: Jakarta Commons-
HttpClient/3.1[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Host: localhost:8081[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-Length: 24266[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "------
=_Part_112_439828433.1316621469049"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-Type: application/xop
+xml; charset=UTF-8; type="application/soap+xml; action=
\"DocumentRepository_ProvideAndRegisterDocumentSet-b\"""
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-Transfer-Encoding:
8bit"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-ID:
<
root...@soapui.org>"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "<soapenv:Envelope
xmlns:soapenv="
http://www.w3.org/2003/05/soap-envelope">[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " <soapenv:Header
xmlns:wsa="
http://www.w3.org/2005/08/addressing">[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " [\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " [\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " [\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " <wsa:Action
soapenv:mustUnderstand="1">urn:ihe:iti:
2007:ProvideAndRegisterDocumentSet-b</wsa:Action><wsa:MessageID
soapenv:mustUnderstand="1">uuid:a3ebbc09-0500-4c4b-882c-2e7f28b84f0a</
wsa:MessageID><wsa:To soapenv:mustUnderstand="1">
http://localhost:8081/
test/ws/iti41Service</wsa:To></soapenv:Header>[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " <soapenv:Body>[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "
<xdsb:ProvideAndRegisterDocumentSetRequest xmlns:xdsb="urn:ihe:iti:xds-
b:2007">[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "
<lcm:SubmitObjectsRequest xmlns:lcm="urn:oasis:names:tc:ebxml-
regrep:xsd:lcm:3.0">[\n]"
...
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " </
lcm:SubmitObjectsRequest>[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " <xdsb:Document
id="Document01"><inc:Include href="cid:Textdocument.txt"
xmlns:inc="
http://www.w3.org/2004/08/xop/include"/></
xdsb:Document>[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " <xdsb:Document
id="Document02"><inc:Include href="cid:Pdfdocument.pdf"
xmlns:inc="
http://www.w3.org/2004/08/xop/include"/></
xdsb:Document>[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " </
xdsb:ProvideAndRegisterDocumentSetRequest>[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> " </soapenv:Body>[\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "</soapenv:Envelope>"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "------
=_Part_112_439828433.1316621469049"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-Type: text/plain;
charset=us-ascii"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-Transfer-Encoding:
7bit"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-ID:
<Textdocument.txt>"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "Content-Disposition:
attachment; name="Textdocument.txt""
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "This is a sample text."
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "------
=_Part_112_439828433.1316621469049--"
Wed Sep 21 18:11:09 CEST 2011:DEBUG:>> "[\r][\n]"
>Are you sure that this case is covered by the XDSMissingDocument code?
I have not checked whether there are any particular tests, but this is
the way I read the spec:
"XDSDocumentEntry exists in metadata with no corresponding attached
document"
(ITI TF-3, Rev. 8, Tab. 4.1-11 – Error Codes)
By the way, the related error condition "XDSMissingDocumentMetadata:
MIMEpackage contains MIMEpart withContent-Id header not found in
metadata" does not behave to my expectation yet as well. Having
"redundant" attachments unreferenced in the message passes
undiscovered, but IHE wishes "special treatment".
The HTTP log looks like this, then:
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "POST /test/ws/iti41Service
HTTP/1.1[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Accept-Encoding:
gzip,deflate[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Type: multipart/
related; type="application/xop+xml"; start="<
root...@soapui.org>";
start-info="application/soap+xml"; action="urn:ihe:iti:
2007:ProvideAndRegisterDocumentSet-b"; boundary="----
=_Part_115_1222679932.1316621951869"[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "MIME-Version: 1.0[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "User-Agent: Jakarta Commons-
HttpClient/3.1[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Host: localhost:8081[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Length: 29212[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "------
=_Part_115_1222679932.1316621951869"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Type: application/xop
+xml; charset=UTF-8; type="application/soap+xml; action=
\"DocumentRepository_ProvideAndRegisterDocumentSet-b\"""
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Transfer-Encoding:
8bit"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-ID:
<
root...@soapui.org>"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "<soapenv:Envelope
xmlns:soapenv="
http://www.w3.org/2003/05/soap-envelope">[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " <soapenv:Header
xmlns:wsa="
http://www.w3.org/2005/08/addressing">[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " [\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " [\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " [\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " <wsa:Action
soapenv:mustUnderstand="1">urn:ihe:iti:
2007:ProvideAndRegisterDocumentSet-b</wsa:Action><wsa:MessageID
soapenv:mustUnderstand="1">uuid:2ca39f30-6290-42e5-a4f1-e286fcf49557</
wsa:MessageID><wsa:To soapenv:mustUnderstand="1">
http://localhost:8081/
test/ws/iti41Service</wsa:To></soapenv:Header>[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " <soapenv:Body>[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "
<xdsb:ProvideAndRegisterDocumentSetRequest xmlns:xdsb="urn:ihe:iti:xds-
b:2007">[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "
<lcm:SubmitObjectsRequest xmlns:lcm="urn:oasis:names:tc:ebxml-
regrep:xsd:lcm:3.0">[\n]"
...
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " </
lcm:SubmitObjectsRequest>[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " <xdsb:Document
id="Document01"><inc:Include href="cid:Textdocument.txt"
xmlns:inc="
http://www.w3.org/2004/08/xop/include"/></
xdsb:Document>[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " </
xdsb:ProvideAndRegisterDocumentSetRequest>[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> " </soapenv:Body>[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "</soapenv:Envelope>"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "------
=_Part_115_1222679932.1316621951869"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Type: text/plain;
charset=us-ascii"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Transfer-Encoding:
7bit"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-ID:
<Textdocument.txt>"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Disposition:
attachment; name="Textdocument.txt""
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "This is a sample text."
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "------
=_Part_115_1222679932.1316621951869"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Type: application/pdf"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Transfer-Encoding:
binary"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-ID: <Pdfdocument.pdf>"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "Content-Disposition:
attachment; name="Pdfdocument.pdf""
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "%PDF-1.3[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "%...
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "13748[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "%%EOF[\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "------
=_Part_115_1222679932.1316621951869--"
Wed Sep 21 18:19:11 CEST 2011:DEBUG:>> "[\r][\n]"
>CXF... hacking this behaviour seems for me to be a pretty dangerous juggling
Oh, not dangerous at all: All that happens is that the behavior
persists - no matter what I change :-)
I guess, my chances of getting it right without deep understanding
InterceptorChain and "Fault Observer" in CXF are like shooting at the
moon...
So I have to think of plan B...
1) Verify the validity of the "XDSMissingDocument" test case with IHE.
Maybe this is not what they meant with after all...
2) Use a patched CXF.
3) Revert my project to ipf-2.3-m1 or at least to cxf-2.3 :-)
Thanks and Best Regards
Marek
On 21 Sep., 15:48, Dmytro Rud <
dmytro....@googlemail.com> wrote:
> BTW, Marek, what is your exact situation? Do you have a
> {urn:ihe:iti:xds-b:2007}Document element with broken reference? Are
> you sure that this case is covered by the XDSMissingDocument code?
>
> Regards
> Dmytro
>
> 2011/9/21 Dmytro Rud <
dmytro....@googlemail.com>:
>
>
>
> > Hi Marek,
>
> > I am happy to hear that you are using IPF and its newest features in
> > particular :-)
>
> > Regarding your question: The error message "no attachment with id..."
> > is generated in the method
> > org.apache.cxf.attachment.LazyDataSource#load(), which is called
> > during the execution of
> > org.apache.cxf.interceptor.AttachmentInInterceptor and whose code has
> > been changed on June 1st, 2011 as shown in
> >
http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apac....
>
> > In my opinion, CXF behaves correctly. Incompatibility of this correct
> > behaviour with IHE requirements may be considered problematic, but I
> > don't know whose problem it is. Further investigation is necessary.
>
> > As a workaround, you can revert the mentioned path locally and build
> > an own CXF version for your project.
>
> > BTW, the Rejection Handling mechanism introduced in IPF 2.3-m2 is
> > generally not intended for changing of message context and/or message
> > flow. The problem is also, that the failed message is dispatched in a
> > special way (i.e. throught a special interceptor chain), and hacking
> > this behaviour seems for me to be a pretty dangerous juggling.
>
> > Kind Regards,
> > Dmytro
>
> > 2011/9/21 Marek0 <
Marek.Vacla...@freenet.de>:
> >> $Soap12FaultOutInterceptorInternal.handleMessage(Soap12FaultOutInterceptor.java:
> >> 67)
> >> at
> >> org.apache.cxf.binding.soap.interceptor.Soap12FaultOutInterceptor
> >> $Soap12FaultOutInterceptorInternal.handleMessage(Soap12FaultOutInterceptor.java:
> >> 56)
> >> at
> >> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:
> >> 263)
> >> at
> >> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:
> >> 105)
> >> at
> >> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:
> >> 323)
> >> at
> >> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:
> >> 121)
> >> at
> >> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:
> >> 206)
> >> at
> >> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:
> >> 218)
> >> at
> >> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:
> >> 200)
> >> at
> >> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:
> >> 114)
> >> at
> >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:
> >> 184)
> >> at
> >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:
> >> 107)
> >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:
> >> 595)
> >> at
> >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:
> >> 163)
> >> at
> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
> >> 304)
> >> at
> >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
> >> 210)
> >> at
> >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
> >> 240)
> >> at
> >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
> >> 164)
> >> at
> >> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:
> >> 462)
> >> at
> >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
> >> 164)
> >> at
> >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
> >> 100)
> >> at
> >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
> >> 118)
> >> at
> >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
> >> 395)
> >> at
> >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
> >> 250)
> >> at org.apache.coyote.http11.Http11Protocol
> >> $Http11ConnectionHandler.process(Http11Protocol.java:188)
> >> at org.apache.coyote.http11.Http11Protocol
> >> $Http11ConnectionHandler.process(Http11Protocol.java:166)
> >> at org.apache.tomcat.util.net.JIoEndpoint
> >> $SocketProcessor.run(JIoEndpoint.java:302)
> >> at java.util.concurrent.ThreadPoolExecutor
> >> $Worker.runTask(Unknown Source)
> >> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
> >> Source)
> >> at java.lang.Thread.run(Unknown Source)- Zitierten Text ausblenden -
>
> - Zitierten Text anzeigen -