[jira] [Updated] (CXF-9062) Be able to create AsyncHTTPConduit based on URLConnectionHTTPConduit

2024-10-08 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9062?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9062:
--
Fix Version/s: 4.1.0
   3.6.5
   4.0.6

> Be able to create AsyncHTTPConduit based on URLConnectionHTTPConduit
> 
>
> Key: CXF-9062
> URL: https://issues.apache.org/jira/browse/CXF-9062
> Project: CXF
>  Issue Type: Improvement
>Reporter: Freeman Yue Fang
>Assignee: Freeman Yue Fang
>Priority: Major
> Fix For: 4.1.0, 3.6.5, 4.0.6
>
>
> When system property "org.apache.cxf.transport.http.forceURLConnection" is 
> true, we should create AsyncHTTPConduit based on the original 
> URLConnectionHTTPConduit.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (CXF-9057) Chunked Stream is closed regularly when Exception is thrown

2024-10-07 Thread Johannes Herr (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17887378#comment-17887378
 ] 

Johannes Herr edited comment on CXF-9057 at 10/7/24 3:49 PM:
-

I have attached the file {{chunked-reproducer.tar.gz}}. To run it:

{noformat}
tar xzf chunked-reproducer.tar.gz
cd chunked-demo/
mvn test
{noformat}

{{ServerMock}} is a Jetty Server with a CXF SOAP-API. It defines a service to 
download data which will throw an exception, while streaming the result. It 
also provides a servlet that does the same for comparions.

{{ServerMockTest}} defines 3 Test. One uses the generated CXF client to call 
the streaming service. Here an exception would be expected, which is not 
thrown. Instead incomplete data is returned.

The other two test cases use raw sockets to be able to print the server 
response to stdout. There are not asserts. It is just a demonstration of the 
differing behaviour of CXF and servlets. One would see the same if one inspects 
the traffic of the first test case with Wireshark.

I hope this helps. Let me know if you need anything else.




was (Author: johannes.herr):
I have attached the file {{chunked-reproducer.tar.gz}}. To run it:

{{noformat}}
tar xzf chunked-reproducer.tar.gz
cd chunked-demo/
mvn test
{{noformat}}

{{ServerMock}} is a Jetty Server with a CXF SOAP-API. It defines a service to 
download data which will throw an exception, while streaming the result. It 
also provides a servlet that does the same for comparions.

{{ServerMockTest}} defines 3 Test. One uses the generated CXF client to call 
the streaming service. Here an exception would be expected, which is not 
thrown. Instead incomplete data is returned.

The other two test cases use raw sockets to be able to print the server 
response to stdout. There are not asserts. It is just a demonstration of the 
differing behaviour of CXF and servlets. One would see the same if one inspects 
the traffic of the first test case with Wireshark.

I hope this helps. Let me know if you need anything else.



> Chunked Stream is closed regularly when Exception is thrown
> ---
>
> Key: CXF-9057
> URL: https://issues.apache.org/jira/browse/CXF-9057
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.8
>Reporter: Johannes Herr
>Priority: Major
> Attachments: chunked-reproducer.tar.gz
>
>
> In response to SOAP requests served by Apache CXF we send large datasets 
> streamed directly from a database. Because of the size of the data, chunked 
> encoding is used. Unfortunately when a database error occurs and an exception 
> is thrown while data is sent, the client will receive a regular ending to the 
> chunked data stream. That means he has no way to recognise that an error 
> occurred and that he has only received a partial file.
> To be more specific the response looks somewhat like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Tue, 10 Sep 2024 16:17:45 GMT
> Content-Type: multipart/related; type="application/xop+xml"; 
> boundary="uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940"; 
> start=""; start-info="text/xml"
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8000
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
> Content-Transfer-Encoding: binary
> Content-ID: 
>  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>[...]
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type:
> Content-Transfer-Encoding: binary
> Content-ID: <03d4ea67-6e8b-4d1f-91b0-b63208989f9...@cxf.apache.org>
> [...]xxx
> 356
> xx
> 0
> {code}
> That means the response ends with the "0" entry, indicating that the transfer 
> is complete.

[jira] [Commented] (CXF-9057) Chunked Stream is closed regularly when Exception is thrown

2024-10-07 Thread Johannes Herr (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17887378#comment-17887378
 ] 

Johannes Herr commented on CXF-9057:


I have attached the file {{chunked-reproducer.tar.gz}}. To run it:

{{noformat}}
tar xzf chunked-reproducer.tar.gz
cd chunked-demo/
mvn test
{{noformat}}

{{ServerMock}} is a Jetty Server with a CXF SOAP-API. It defines a service to 
download data which will throw an exception, while streaming the result. It 
also provides a servlet that does the same for comparions.

{{ServerMockTest}} defines 3 Test. One uses the generated CXF client to call 
the streaming service. Here an exception would be expected, which is not 
thrown. Instead incomplete data is returned.

The other two test cases use raw sockets to be able to print the server 
response to stdout. There are not asserts. It is just a demonstration of the 
differing behaviour of CXF and servlets. One would see the same if one inspects 
the traffic of the first test case with Wireshark.

I hope this helps. Let me know if you need anything else.



> Chunked Stream is closed regularly when Exception is thrown
> ---
>
> Key: CXF-9057
> URL: https://issues.apache.org/jira/browse/CXF-9057
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.8
>Reporter: Johannes Herr
>Priority: Major
> Attachments: chunked-reproducer.tar.gz
>
>
> In response to SOAP requests served by Apache CXF we send large datasets 
> streamed directly from a database. Because of the size of the data, chunked 
> encoding is used. Unfortunately when a database error occurs and an exception 
> is thrown while data is sent, the client will receive a regular ending to the 
> chunked data stream. That means he has no way to recognise that an error 
> occurred and that he has only received a partial file.
> To be more specific the response looks somewhat like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Tue, 10 Sep 2024 16:17:45 GMT
> Content-Type: multipart/related; type="application/xop+xml"; 
> boundary="uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940"; 
> start=""; start-info="text/xml"
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8000
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
> Content-Transfer-Encoding: binary
> Content-ID: 
>  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>[...]
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type:
> Content-Transfer-Encoding: binary
> Content-ID: <03d4ea67-6e8b-4d1f-91b0-b63208989f9...@cxf.apache.org>
> [...]xxx
> 356
> xx
> 0
> {code}
> That means the response ends with the "0" entry, indicating that the transfer 
> is complete.
> What should happen instead is that the response should be closed without 
> sending the final 0 entry. ([https://stackoverflow.com/a/17203961/136247])
> For example when we use a Servlet to stream data to a client a throw an 
> exception the result will look something like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Fri, 13 Sep 2024 09:31:48 GMT
> Content-Type: text/plain;charset=utf-8
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8
> Chunk 1
> 8
> Chunk 2
> 8
> Chunk 3
> 8
> Chunk 4
> 8
> Chunk 5
> {code}
> Here there is no closing 0 marker. As a result clients can recognise the 
> error. (Curl will report "curl: (18) transfer closed with outstanding read 
> data remaining", Chrome "Failed to load resource: 
> net::ERR_INCOMPLETE_CHUNKED_ENCODING")
> CXF should do the same and not end the chunked stream regularly, when an 
> exception is thrown.
> I have tested 

[jira] [Updated] (CXF-9057) Chunked Stream is closed regularly when Exception is thrown

2024-10-07 Thread Johannes Herr (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9057?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Johannes Herr updated CXF-9057:
---
Attachment: chunked-reproducer.tar.gz

> Chunked Stream is closed regularly when Exception is thrown
> ---
>
> Key: CXF-9057
> URL: https://issues.apache.org/jira/browse/CXF-9057
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.8
>Reporter: Johannes Herr
>Priority: Major
> Attachments: chunked-reproducer.tar.gz
>
>
> In response to SOAP requests served by Apache CXF we send large datasets 
> streamed directly from a database. Because of the size of the data, chunked 
> encoding is used. Unfortunately when a database error occurs and an exception 
> is thrown while data is sent, the client will receive a regular ending to the 
> chunked data stream. That means he has no way to recognise that an error 
> occurred and that he has only received a partial file.
> To be more specific the response looks somewhat like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Tue, 10 Sep 2024 16:17:45 GMT
> Content-Type: multipart/related; type="application/xop+xml"; 
> boundary="uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940"; 
> start=""; start-info="text/xml"
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8000
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
> Content-Transfer-Encoding: binary
> Content-ID: 
>  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>[...]
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type:
> Content-Transfer-Encoding: binary
> Content-ID: <03d4ea67-6e8b-4d1f-91b0-b63208989f9...@cxf.apache.org>
> [...]xxx
> 356
> xx
> 0
> {code}
> That means the response ends with the "0" entry, indicating that the transfer 
> is complete.
> What should happen instead is that the response should be closed without 
> sending the final 0 entry. ([https://stackoverflow.com/a/17203961/136247])
> For example when we use a Servlet to stream data to a client a throw an 
> exception the result will look something like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Fri, 13 Sep 2024 09:31:48 GMT
> Content-Type: text/plain;charset=utf-8
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8
> Chunk 1
> 8
> Chunk 2
> 8
> Chunk 3
> 8
> Chunk 4
> 8
> Chunk 5
> {code}
> Here there is no closing 0 marker. As a result clients can recognise the 
> error. (Curl will report "curl: (18) transfer closed with outstanding read 
> data remaining", Chrome "Failed to load resource: 
> net::ERR_INCOMPLETE_CHUNKED_ENCODING")
> CXF should do the same and not end the chunked stream regularly, when an 
> exception is thrown.
> I have tested with Tomcat and Jetty. Both show the same behaviour.
> To provide some detail, Exceptions are caught by CXF here:
> org/apache/cxf/phase/PhaseInterceptorChain.java:328
> {code:java}
> } catch (RuntimeException ex) {
> if (!faultOccurred) {
> faultOccurred = true;
> wrapExceptionAsFault(message, ex);
> }
> state = State.ABORTED;
> }
> {code}
> The exception is logged, but not rethrown.
> If the exception would be thrown, for instance Tomcats ErrorReportValve would 
> shut down the output and thereby prevent the end of the input and closing 0 
> to be written.
> org/apache/catalina/valves/ErrorReportValve.java:112
> {code:java}
> // Now close immediately to signal to the client that
>

[jira] [Commented] (CXF-9062) Be able to create AsyncHTTPConduit based on URLConnectionHTTPConduit

2024-10-04 Thread Freeman Yue Fang (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9062?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886966#comment-17886966
 ] 

Freeman Yue Fang commented on CXF-9062:
---

Sent PR
https://github.com/apache/cxf/pull/2093

> Be able to create AsyncHTTPConduit based on URLConnectionHTTPConduit
> 
>
> Key: CXF-9062
> URL: https://issues.apache.org/jira/browse/CXF-9062
> Project: CXF
>  Issue Type: Improvement
>Reporter: Freeman Yue Fang
>Assignee: Freeman Yue Fang
>Priority: Major
>
> When system property "org.apache.cxf.transport.http.forceURLConnection" is 
> true, we should create AsyncHTTPConduit based on the original 
> URLConnectionHTTPConduit.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9063) OpenTelemetry context leak with CXF async client

2024-10-04 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9063?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886953#comment-17886953
 ] 

Andriy Redko commented on CXF-9063:
---

Awesome, thanks a lot [~ffang]!

> OpenTelemetry context leak with CXF async client
> 
>
> Key: CXF-9063
> URL: https://issues.apache.org/jira/browse/CXF-9063
> Project: CXF
>  Issue Type: Bug
>  Components: Core, Tracing
>Affects Versions: 4.0.5
>Reporter: Matthew Robson
>Priority: Major
>
> There seems to be a Otel context leak when using a CXF producer in async 
> mode. This causes different requests to have the same traceId. As a 
> workaround, setting synchronous=true on the CXF producer resolves the issue.
> Unit test to reproduce added to camel: 
> https://github.com/apache/camel/blob/7d83a62b8e442dc9ac6fd79b153192add940301e/components/camel-opentelemetry/src/test/java/org/apache/camel/opentelemetry/AsyncCxfTest.java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9064) AsyncHTTPConduit doesn't close wrappedStream on close

2024-10-04 Thread Alexey Deryabin (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886936#comment-17886936
 ] 

Alexey Deryabin commented on CXF-9064:
--

Thank you [~reta] for quick response.

You are right, the {{wrappedStream}} is closed by the {{supe.close()}} call 
chain but my concern about the local variable {{out}} which is pointed to the 
old {{wrappedStream}}.

You never close old stream that is why tempFile is leaking in some cases.

> AsyncHTTPConduit doesn't close wrappedStream on close
> -
>
> Key: CXF-9064
> URL: https://issues.apache.org/jira/browse/CXF-9064
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.6.4
>Reporter: Alexey Deryabin
>Priority: Major
>
> I found that in 
> org.apache.cxf.transport.http.asyncclient.AsyncHTTPConduit$AsyncWrappedOutputStream
>  on close method the wrappedStream is not closed but reassigned to the new 
> anonymous OutputStream in handleHeadersTrustCaching by setupWrappedStream.
> It is in cxf-rt-transports-http-hc module.
> My suggest to add out.close() on 426 line.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9063) OpenTelemetry context leak with CXF async client

2024-10-04 Thread Freeman Yue Fang (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9063?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886929#comment-17886929
 ] 

Freeman Yue Fang commented on CXF-9063:
---

Hi [~reta],

I have checked this issue quickly and put my comment in CAMEL-21302. For now I 
think most likely we need to address it in camel code base.

Best Regards
Freeman

> OpenTelemetry context leak with CXF async client
> 
>
> Key: CXF-9063
> URL: https://issues.apache.org/jira/browse/CXF-9063
> Project: CXF
>  Issue Type: Bug
>  Components: Core, Tracing
>Affects Versions: 4.0.5
>Reporter: Matthew Robson
>Priority: Major
>
> There seems to be a Otel context leak when using a CXF producer in async 
> mode. This causes different requests to have the same traceId. As a 
> workaround, setting synchronous=true on the CXF producer resolves the issue.
> Unit test to reproduce added to camel: 
> https://github.com/apache/camel/blob/7d83a62b8e442dc9ac6fd79b153192add940301e/components/camel-opentelemetry/src/test/java/org/apache/camel/opentelemetry/AsyncCxfTest.java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9064) AsyncHTTPConduit doesn't close wrappedStream on close

2024-10-03 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886809#comment-17886809
 ] 

Andriy Redko commented on CXF-9064:
---

Thanks [~exprompt], the wrappedStream  is closed by `super.close()` call chain, 
more specifically AbstractWrappedOutputStream::close() (if it is not cached), 
does it address your concern? Thank you.

> AsyncHTTPConduit doesn't close wrappedStream on close
> -
>
> Key: CXF-9064
> URL: https://issues.apache.org/jira/browse/CXF-9064
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.6.4
>Reporter: Alexey Deryabin
>Priority: Major
>
> I found that in 
> org.apache.cxf.transport.http.asyncclient.AsyncHTTPConduit$AsyncWrappedOutputStream
>  on close method the wrappedStream is not closed but reassigned to the new 
> anonymous OutputStream in handleHeadersTrustCaching by setupWrappedStream.
> It is in cxf-rt-transports-http-hc module.
> My suggest to add out.close() on 426 line.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9063) OpenTelemetry context leak with CXF async client

2024-10-03 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9063?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886808#comment-17886808
 ] 

Andriy Redko commented on CXF-9063:
---

Thanks [~mrobson], will look at it shortly

> OpenTelemetry context leak with CXF async client
> 
>
> Key: CXF-9063
> URL: https://issues.apache.org/jira/browse/CXF-9063
> Project: CXF
>  Issue Type: Bug
>  Components: Core, Tracing
>Affects Versions: 4.0.5
>Reporter: Matthew Robson
>Priority: Major
>
> There seems to be a Otel context leak when using a CXF producer in async 
> mode. This causes different requests to have the same traceId. As a 
> workaround, setting synchronous=true on the CXF producer resolves the issue.
> Unit test to reproduce added to camel: 
> https://github.com/apache/camel/blob/7d83a62b8e442dc9ac6fd79b153192add940301e/components/camel-opentelemetry/src/test/java/org/apache/camel/opentelemetry/AsyncCxfTest.java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXF-9064) AsyncHTTPConduit doesn't close wrappedStream on close

2024-10-02 Thread Alexey Deryabin (Jira)
Alexey Deryabin created CXF-9064:


 Summary: AsyncHTTPConduit doesn't close wrappedStream on close
 Key: CXF-9064
 URL: https://issues.apache.org/jira/browse/CXF-9064
 Project: CXF
  Issue Type: Bug
Affects Versions: 3.6.4
Reporter: Alexey Deryabin


I found that in 
org.apache.cxf.transport.http.asyncclient.AsyncHTTPConduit$AsyncWrappedOutputStream
 on close method the wrappedStream is not closed but reassigned to the new 
anonymous OutputStream in handleHeadersTrustCaching by setupWrappedStream.

It is in cxf-rt-transports-http-hc module.

My suggest to add out.close() on 426 line.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXF-9063) OpenTelemetry context leak with CXF async client

2024-10-02 Thread Matthew Robson (Jira)
Matthew Robson created CXF-9063:
---

 Summary: OpenTelemetry context leak with CXF async client
 Key: CXF-9063
 URL: https://issues.apache.org/jira/browse/CXF-9063
 Project: CXF
  Issue Type: Bug
  Components: Core, Tracing
Affects Versions: 4.0.5
Reporter: Matthew Robson


There seems to be a Otel context leak when using a CXF producer in async mode. 
This causes different requests to have the same traceId. As a workaround, 
setting synchronous=true on the CXF producer resolves the issue.

Unit test to reproduce added to camel: 
https://github.com/apache/camel/blob/7d83a62b8e442dc9ac6fd79b153192add940301e/components/camel-opentelemetry/src/test/java/org/apache/camel/opentelemetry/AsyncCxfTest.java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9057) Chunked Stream is closed regularly when Exception is thrown

2024-10-02 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886385#comment-17886385
 ] 

Andriy Redko commented on CXF-9057:
---

Thank you!

> Chunked Stream is closed regularly when Exception is thrown
> ---
>
> Key: CXF-9057
> URL: https://issues.apache.org/jira/browse/CXF-9057
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.8
>Reporter: Johannes Herr
>Priority: Major
>
> In response to SOAP requests served by Apache CXF we send large datasets 
> streamed directly from a database. Because of the size of the data, chunked 
> encoding is used. Unfortunately when a database error occurs and an exception 
> is thrown while data is sent, the client will receive a regular ending to the 
> chunked data stream. That means he has no way to recognise that an error 
> occurred and that he has only received a partial file.
> To be more specific the response looks somewhat like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Tue, 10 Sep 2024 16:17:45 GMT
> Content-Type: multipart/related; type="application/xop+xml"; 
> boundary="uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940"; 
> start=""; start-info="text/xml"
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8000
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
> Content-Transfer-Encoding: binary
> Content-ID: 
>  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>[...]
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type:
> Content-Transfer-Encoding: binary
> Content-ID: <03d4ea67-6e8b-4d1f-91b0-b63208989f9...@cxf.apache.org>
> [...]xxx
> 356
> xx
> 0
> {code}
> That means the response ends with the "0" entry, indicating that the transfer 
> is complete.
> What should happen instead is that the response should be closed without 
> sending the final 0 entry. ([https://stackoverflow.com/a/17203961/136247])
> For example when we use a Servlet to stream data to a client a throw an 
> exception the result will look something like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Fri, 13 Sep 2024 09:31:48 GMT
> Content-Type: text/plain;charset=utf-8
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8
> Chunk 1
> 8
> Chunk 2
> 8
> Chunk 3
> 8
> Chunk 4
> 8
> Chunk 5
> {code}
> Here there is no closing 0 marker. As a result clients can recognise the 
> error. (Curl will report "curl: (18) transfer closed with outstanding read 
> data remaining", Chrome "Failed to load resource: 
> net::ERR_INCOMPLETE_CHUNKED_ENCODING")
> CXF should do the same and not end the chunked stream regularly, when an 
> exception is thrown.
> I have tested with Tomcat and Jetty. Both show the same behaviour.
> To provide some detail, Exceptions are caught by CXF here:
> org/apache/cxf/phase/PhaseInterceptorChain.java:328
> {code:java}
> } catch (RuntimeException ex) {
> if (!faultOccurred) {
> faultOccurred = true;
> wrapExceptionAsFault(message, ex);
> }
> state = State.ABORTED;
> }
> {code}
> The exception is logged, but not rethrown.
> If the exception would be thrown, for instance Tomcats ErrorReportValve would 
> shut down the output and thereby prevent the end of the input and closing 0 
> to be written.
> org/apache/catalina/valves/ErrorReportValve.java:112
> {code:java}
> // Now close immediately to signal to the client that
> // something went wrong
> 

[jira] [Commented] (CXF-9057) Chunked Stream is closed regularly when Exception is thrown

2024-10-02 Thread Johannes Herr (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886376#comment-17886376
 ] 

Johannes Herr commented on CXF-9057:


Hi Andriy, I will create a small project to demonstrate the problem. Might take 
until next week though.

> Chunked Stream is closed regularly when Exception is thrown
> ---
>
> Key: CXF-9057
> URL: https://issues.apache.org/jira/browse/CXF-9057
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.8
>Reporter: Johannes Herr
>Priority: Major
>
> In response to SOAP requests served by Apache CXF we send large datasets 
> streamed directly from a database. Because of the size of the data, chunked 
> encoding is used. Unfortunately when a database error occurs and an exception 
> is thrown while data is sent, the client will receive a regular ending to the 
> chunked data stream. That means he has no way to recognise that an error 
> occurred and that he has only received a partial file.
> To be more specific the response looks somewhat like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Tue, 10 Sep 2024 16:17:45 GMT
> Content-Type: multipart/related; type="application/xop+xml"; 
> boundary="uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940"; 
> start=""; start-info="text/xml"
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8000
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
> Content-Transfer-Encoding: binary
> Content-ID: 
>  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>[...]
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type:
> Content-Transfer-Encoding: binary
> Content-ID: <03d4ea67-6e8b-4d1f-91b0-b63208989f9...@cxf.apache.org>
> [...]xxx
> 356
> xx
> 0
> {code}
> That means the response ends with the "0" entry, indicating that the transfer 
> is complete.
> What should happen instead is that the response should be closed without 
> sending the final 0 entry. ([https://stackoverflow.com/a/17203961/136247])
> For example when we use a Servlet to stream data to a client a throw an 
> exception the result will look something like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Fri, 13 Sep 2024 09:31:48 GMT
> Content-Type: text/plain;charset=utf-8
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8
> Chunk 1
> 8
> Chunk 2
> 8
> Chunk 3
> 8
> Chunk 4
> 8
> Chunk 5
> {code}
> Here there is no closing 0 marker. As a result clients can recognise the 
> error. (Curl will report "curl: (18) transfer closed with outstanding read 
> data remaining", Chrome "Failed to load resource: 
> net::ERR_INCOMPLETE_CHUNKED_ENCODING")
> CXF should do the same and not end the chunked stream regularly, when an 
> exception is thrown.
> I have tested with Tomcat and Jetty. Both show the same behaviour.
> To provide some detail, Exceptions are caught by CXF here:
> org/apache/cxf/phase/PhaseInterceptorChain.java:328
> {code:java}
> } catch (RuntimeException ex) {
> if (!faultOccurred) {
> faultOccurred = true;
> wrapExceptionAsFault(message, ex);
> }
> state = State.ABORTED;
> }
> {code}
> The exception is logged, but not rethrown.
> If the exception would be thrown, for instance Tomcats ErrorReportValve would 
> shut down the output and thereby prevent the end of the input and closing 0 
> to be written.
> org/apache/catalina/valves/ErrorReportValve.java:112
> {code:java}
> // Now close

[jira] [Commented] (CXF-9057) Chunked Stream is closed regularly when Exception is thrown

2024-10-01 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886297#comment-17886297
 ] 

Andriy Redko commented on CXF-9057:
---

Thanks [~johannes.herr], do you by any chance have a reproducible test case (or 
application) for this issue? thank you

> Chunked Stream is closed regularly when Exception is thrown
> ---
>
> Key: CXF-9057
> URL: https://issues.apache.org/jira/browse/CXF-9057
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.8
>Reporter: Johannes Herr
>Priority: Major
>
> In response to SOAP requests served by Apache CXF we send large datasets 
> streamed directly from a database. Because of the size of the data, chunked 
> encoding is used. Unfortunately when a database error occurs and an exception 
> is thrown while data is sent, the client will receive a regular ending to the 
> chunked data stream. That means he has no way to recognise that an error 
> occurred and that he has only received a partial file.
> To be more specific the response looks somewhat like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Tue, 10 Sep 2024 16:17:45 GMT
> Content-Type: multipart/related; type="application/xop+xml"; 
> boundary="uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940"; 
> start=""; start-info="text/xml"
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8000
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
> Content-Transfer-Encoding: binary
> Content-ID: 
>  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>[...]
> --uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
> Content-Type:
> Content-Transfer-Encoding: binary
> Content-ID: <03d4ea67-6e8b-4d1f-91b0-b63208989f9...@cxf.apache.org>
> [...]xxx
> 356
> xx
> 0
> {code}
> That means the response ends with the "0" entry, indicating that the transfer 
> is complete.
> What should happen instead is that the response should be closed without 
> sending the final 0 entry. ([https://stackoverflow.com/a/17203961/136247])
> For example when we use a Servlet to stream data to a client a throw an 
> exception the result will look something like this:
> {code:java}
> HTTP/1.1 200 OK
> Date: Fri, 13 Sep 2024 09:31:48 GMT
> Content-Type: text/plain;charset=utf-8
> Transfer-Encoding: chunked
> Server: Jetty(10.0.21)
> 8
> Chunk 1
> 8
> Chunk 2
> 8
> Chunk 3
> 8
> Chunk 4
> 8
> Chunk 5
> {code}
> Here there is no closing 0 marker. As a result clients can recognise the 
> error. (Curl will report "curl: (18) transfer closed with outstanding read 
> data remaining", Chrome "Failed to load resource: 
> net::ERR_INCOMPLETE_CHUNKED_ENCODING")
> CXF should do the same and not end the chunked stream regularly, when an 
> exception is thrown.
> I have tested with Tomcat and Jetty. Both show the same behaviour.
> To provide some detail, Exceptions are caught by CXF here:
> org/apache/cxf/phase/PhaseInterceptorChain.java:328
> {code:java}
> } catch (RuntimeException ex) {
> if (!faultOccurred) {
> faultOccurred = true;
> wrapExceptionAsFault(message, ex);
> }
> state = State.ABORTED;
> }
> {code}
> The exception is logged, but not rethrown.
> If the exception would be thrown, for instance Tomcats ErrorReportValve would 
> shut down the output and thereby prevent the end of the input and closing 0 
> to be written.
> org/apache/catalina/valves/ErrorReportValve.java:112
> {code:java}
>

[jira] [Created] (CXF-9062) Be able to create AsyncHTTPConduit based on URLConnectionHTTPConduit

2024-10-01 Thread Freeman Yue Fang (Jira)
Freeman Yue Fang created CXF-9062:
-

 Summary: Be able to create AsyncHTTPConduit based on 
URLConnectionHTTPConduit
 Key: CXF-9062
 URL: https://issues.apache.org/jira/browse/CXF-9062
 Project: CXF
  Issue Type: Improvement
Reporter: Freeman Yue Fang


When system property "org.apache.cxf.transport.http.forceURLConnection" is 
true, we should create AsyncHTTPConduit based on the original 
URLConnectionHTTPConduit.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (CXF-9062) Be able to create AsyncHTTPConduit based on URLConnectionHTTPConduit

2024-10-01 Thread Freeman Yue Fang (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9062?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Freeman Yue Fang reassigned CXF-9062:
-

Assignee: Freeman Yue Fang

> Be able to create AsyncHTTPConduit based on URLConnectionHTTPConduit
> 
>
> Key: CXF-9062
> URL: https://issues.apache.org/jira/browse/CXF-9062
> Project: CXF
>  Issue Type: Improvement
>Reporter: Freeman Yue Fang
>Assignee: Freeman Yue Fang
>Priority: Major
>
> When system property "org.apache.cxf.transport.http.forceURLConnection" is 
> true, we should create AsyncHTTPConduit based on the original 
> URLConnectionHTTPConduit.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9056) NTML Login ends up with Authorization loop detected after upgrading CXF from 3.5 to 3.6

2024-10-01 Thread Alexander Suter (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17886093#comment-17886093
 ] 

Alexander Suter commented on CXF-9056:
--

Hello [~ffang] 

Thanks. Yes, you are right. By setting this property it works again.

The bad thing in my environment is that I've the hc (async) jar on my 
classpath. Even if I disable ASYNC_HTTP the HTTPConduit will be created by the 
hc jar

 
{code:java}
// HTTPTransportFactory

HTTPConduitFactory factory = findFactory(endpointInfo, bus);
HTTPConduit conduit = null;
if (factory != null) {
  conduit = factory.createConduit(this, bus, endpointInfo, target);
}
if (conduit == null) {
  if (forceURLConnectionConduit) {
conduit = new URLConnectionHTTPConduit(bus, endpointInfo, target);
  } else {
conduit = new HttpClientHTTPConduit(bus, endpointInfo, target);
  }
} {code}

> NTML Login ends up with Authorization loop detected after upgrading CXF from 
> 3.5 to 3.6
> ---
>
> Key: CXF-9056
> URL: https://issues.apache.org/jira/browse/CXF-9056
> Project: CXF
>  Issue Type: Bug
>Reporter: Alexander Suter
>Priority: Major
> Attachments: stacktrace.txt
>
>
> After upgrading cxf from 3.5 to 3.6 we can no longer authenticate with NTLM 
> with CXF as web service client technology.
>  
> We do support two modes in our product. With Challenge and without challenge. 
> And the case without challenge (challenge = false) is no longer working 
> whereas the authentication will be set on the httpConduit directly.
>  
> {code:java}
> public class NTLMAuthenticationFeature implements WebServiceClientFeature {
>  
>  @Override
>  public void initialize(WebServiceClientFeatureContext context) {
>BindingProvider bindingProvider = context.getBindingProvider();
>WsProps props = new WsProps(context.getProperties());
>Client proxy = ClientProxy.getClient(bindingProvider);
>  
>boolean challenge = 
> props.bool(Authentication.NTLM.CHALLENGE).orElse(Boolean.TRUE);
>proxy.getRequestContext().put(AsyncHTTPConduit.USE_ASYNC, challenge);
>var credentials = createNTCredentials(props);
>if (challenge) {
>  proxy.getRequestContext().put(Credentials.class.getName(), credentials);
>} 
>   Conduit conduit = proxy.getConduit();
>   if (conduit instanceof HTTPConduit httpConduit) {
> httpConduit.getClient().setAutoRedirect(true);
>   }
>   if (!challenge) {
>// this does no longer work
>httpConduit.getClient().setAllowChunking(false);
>setNtlmAuthHeader(credentials, httpConduit);
>   }
> }
> private void setNtlmAuthHeader(NTCredentials credentials, HTTPConduit 
> httpConduit) {
>  var auth = httpConduit.getAuthorization();
>  auth.setAuthorizationType("NTLM");
>  auth.setUserName(credentials.getUserPrincipal().getName());
>  auth.setPassword(credentials.getPassword());
> }
> private static NTCredentials createNTCredentials(WsProps properties) {
>  var username = properties.string(Authentication.USERNAME);
>  var password = properties.string(Authentication.PASSWORD);
>  var workstation = properties.string(Authentication.NTLM.WORKSTATION);
>  var domain = properties.string(Authentication.NTLM.DOMAIN);
>  return new NTCredentials(username, password, workstation, domain);
> }
> private static record WsProps(Map props) {
>  
>  String string(String key) {
>  
>  return Optional.ofNullable(props.get(key))
>  .map(String.class::cast)
>  .orElse(null);
>  
>  Optional bool(String key) {
>   return Optional.ofNullable(props.get(key))
>   .map(String.class::cast)
>   .filter(Predicate.not(String::isBlank))
>   .map(Boolean::parseBoolean);
>  }
>  }
> }  {code}
>  
> See the error stack trace in the log.
> Do you have any hints for this problem?
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-8828) Support Jakarta EE 11

2024-09-30 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-8828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-8828:
--
Description: 
Support Jakarta EE 11 ([https://jakarta.ee/specifications/platform/11/])

Minimum JDK requirement - JDK-17

 

Specs updates:
 * [Jakarta Validation 3.1 
(|https://jakarta.ee/specifications/bean-validation/3.1/] 
[https://github.com/apache/cxf/pull/1889)]
 * Jakarta Persistence 3.2 ([https://github.com/apache/cxf/pull/1891, 
|https://github.com/apache/cxf/pull/1891] 
[https://jakarta.ee/specifications/persistence/3.2/)|https://jakarta.ee/specifications/persistence/3.2/]
 * Jakarta Annotations 3.0 
([https://jakarta.ee/specifications/annotations/3.0/)]
 * Jakarta Authorization 3.0 
([https://jakarta.ee/specifications/authorization/3.0/)]
 * Jakarta Contexts and Dependency Injection 4.1 
([https://jakarta.ee/specifications/cdi/4.1/)]
 * Jakarta Expression Language 6.0 
([https://jakarta.ee/specifications/expression-language/6.0/)]
 * Jakarta Interceptors 2.2 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta RESTful Web Services 4.0 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta Validation 3.1 
([https://jakarta.ee/specifications/bean-validation/3.1/])
 * Jakarta WebSocket 2.2 ([https://jakarta.ee/specifications/websocket/2.2/])
 * Jakarta Concurrency 3.1 
([https://jakarta.ee/specifications/concurrency/3.1/)]
 * Jakarta Data 1.0 ([https://jakarta.ee/specifications/data/1.0/)]
 * Jakarta Faces 4.1 ([https://jakarta.ee/specifications/faces/4.1/)]
 * Jakarta Pages 4.0 ([https://jakarta.ee/specifications/pages/4.0/)]
 * Jakarta Servlet 6.1 ([https://jakarta.ee/specifications/servlet/6.1/])
 * Jakarta Authentication 3.0 
([https://jakarta.ee/specifications/authentication/3.1/]) 
 * Jakarta Security 4.0 ([https://jakarta.ee/specifications/security/4.0/])

Updates required:

 - Tomcat 11 ([https://www.mail-archive.com/announce@apache.org/msg07789.html])

 - Arquillian Weld Container 4.x ([https://github.com/apache/cxf/pull/1621])

 - Apache ActiveMQ 6 ([https://activemq.apache.org/activemq-600-release])

 - Hibernate Validator 9 
([https://in.relation.to/2024/09/04/hibernate-validator-9-0-0-Beta3/] 
[)|https://in.relation.to/2024/08/01/hibernate-validator-9-0-0-Beta2/)]

 - Hibernate 7 ([https://in.relation.to/2024/08/01/orm-70-beta1/])

 - Hibernate Validator 9 
(https://in.relation.to/2024/09/04/hibernate-validator-9-0-0-Beta3/) 

 - MicroProfile OpenAPI 4.0 
([https://github.com/eclipse/microprofile-open-api/releases/tag/4.0.1), 
https://github.com/apache/cxf/pull/2078]

 - [MicroProfile Rest 
Client|https://download.eclipse.org/microprofile/microprofile-rest-client-4.0-RC1/microprofile-rest-client-spec-4.0-RC1.pdf]
 4.0 
([https://github.com/eclipse/microprofile-rest-client/releases/tag/4.0|https://github.com/eclipse/microprofile-rest-client/releases/tag/4.0-RC1],
 [https://github.com/apache/cxf/pull/2028])

 

Of interests:
 - 
[https://microprofile.io/2024/08/22/microprofile-7-0-release/|https://microprofile.io/2024/08/22/microprofile-7-0-release/#sidebar]

  was:
Support Jakarta EE 11 ([https://jakarta.ee/specifications/platform/11/])

Minimum JDK requirement - JDK-17

 

Specs updates:
 * [Jakarta Validation 3.1 
(|https://jakarta.ee/specifications/bean-validation/3.1/] 
[https://github.com/apache/cxf/pull/1889)]
 * Jakarta Persistence 3.2 ([https://github.com/apache/cxf/pull/1891, 
|https://github.com/apache/cxf/pull/1891] 
[https://jakarta.ee/specifications/persistence/3.2/)|https://jakarta.ee/specifications/persistence/3.2/]
 * Jakarta Annotations 3.0 
([https://jakarta.ee/specifications/annotations/3.0/)]
 * Jakarta Authorization 3.0 
([https://jakarta.ee/specifications/authorization/3.0/)]
 * Jakarta Contexts and Dependency Injection 4.1 
([https://jakarta.ee/specifications/cdi/4.1/)]
 * Jakarta Expression Language 6.0 
([https://jakarta.ee/specifications/expression-language/6.0/)]
 * Jakarta Interceptors 2.2 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta RESTful Web Services 4.0 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta Validation 3.1 
([https://jakarta.ee/specifications/bean-validation/3.1/])
 * Jakarta WebSocket 2.2 ([https://jakarta.ee/specifications/websocket/2.2/])
 * Jakarta Concurrency 3.1 
([https://jakarta.ee/specifications/concurrency/3.1/)]
 * Jakarta Data 1.0 ([https://jakarta.ee/specifications/data/1.0/)]
 * Jakarta Faces 4.1 ([https://jakarta.ee/specifications/faces/4.1/)]
 * Jakarta Pages 4.0 ([https://jakarta.ee/specifications/pages/4.0/)]
 * Jakarta Servlet 6.1 ([https://jakarta.ee/specifications/servlet/6.1/])
 * Jakarta Authentication 3.0 
([https://jakarta.ee/specifications/authentication/3.1/]) 
 * Jakarta Security 4.0 ([https://jakarta.ee/specifications/security/4.0/])

Updates required:

 - Tomcat 11 ([https://www.mail-archive.com/announce@apache.org/msg07789.html])

 - Arquillian Weld

[jira] [Updated] (CXF-8828) Support Jakarta EE 11

2024-09-30 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-8828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-8828:
--
Description: 
Support Jakarta EE 11 ([https://jakarta.ee/specifications/platform/11/])

Minimum JDK requirement - JDK-17

 

Specs updates:
 * [Jakarta Validation 3.1 
(|https://jakarta.ee/specifications/bean-validation/3.1/] 
[https://github.com/apache/cxf/pull/1889)]
 * Jakarta Persistence 3.2 ([https://github.com/apache/cxf/pull/1891, 
|https://github.com/apache/cxf/pull/1891] 
[https://jakarta.ee/specifications/persistence/3.2/)|https://jakarta.ee/specifications/persistence/3.2/]
 * Jakarta Annotations 3.0 
([https://jakarta.ee/specifications/annotations/3.0/)]
 * Jakarta Authorization 3.0 
([https://jakarta.ee/specifications/authorization/3.0/)]
 * Jakarta Contexts and Dependency Injection 4.1 
([https://jakarta.ee/specifications/cdi/4.1/)]
 * Jakarta Expression Language 6.0 
([https://jakarta.ee/specifications/expression-language/6.0/)]
 * Jakarta Interceptors 2.2 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta RESTful Web Services 4.0 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta Validation 3.1 
([https://jakarta.ee/specifications/bean-validation/3.1/])
 * Jakarta WebSocket 2.2 ([https://jakarta.ee/specifications/websocket/2.2/])
 * Jakarta Concurrency 3.1 
([https://jakarta.ee/specifications/concurrency/3.1/)]
 * Jakarta Data 1.0 ([https://jakarta.ee/specifications/data/1.0/)]
 * Jakarta Faces 4.1 ([https://jakarta.ee/specifications/faces/4.1/)]
 * Jakarta Pages 4.0 ([https://jakarta.ee/specifications/pages/4.0/)]
 * Jakarta Servlet 6.1 ([https://jakarta.ee/specifications/servlet/6.1/])
 * Jakarta Authentication 3.0 
([https://jakarta.ee/specifications/authentication/3.1/]) 
 * Jakarta Security 4.0 ([https://jakarta.ee/specifications/security/4.0/])

Updates required:

 - Tomcat 11 ([https://www.mail-archive.com/announce@apache.org/msg07789.html])

 - Arquillian Weld Container 4.x ([https://github.com/apache/cxf/pull/1621])

 - Apache ActiveMQ 6 ([https://activemq.apache.org/activemq-600-release])

 - Hibernate Validator 9 
([https://in.relation.to/2024/09/04/hibernate-validator-9-0-0-Beta3/] 
[)|https://in.relation.to/2024/08/01/hibernate-validator-9-0-0-Beta2/)]

 - Hibernate 7 ([https://in.relation.to/2024/08/01/orm-70-beta1/])

 - Hibernate Validator 9 
(https://in.relation.to/2024/09/04/hibernate-validator-9-0-0-Beta3/) 

 - MicroProfile OpenAPI 4.0 
([https://github.com/eclipse/microprofile-open-api/releases/tag/4.0.1), 
https://github.com/apache/cxf/pull/2078]

 - [MicroProfile Rest 
Client|https://download.eclipse.org/microprofile/microprofile-rest-client-4.0-RC1/microprofile-rest-client-spec-4.0-RC1.pdf]
 4.0 
([https://github.com/eclipse/microprofile-rest-client/releases/tag/4.0|https://github.com/eclipse/microprofile-rest-client/releases/tag/4.0-RC1],
 [https://github.com/apache/cxf/pull/2028])

 

Of interests:
 - 
[https://microprofile.io/2024/08/22/microprofile-7-0-release/|https://microprofile.io/2024/08/22/microprofile-7-0-release/#sidebar]

  was:
Support Jakarta EE 11 ([https://jakarta.ee/specifications/platform/11/])

Minimum JDK requirement - JDK-17

 

Specs updates:
 * [Jakarta Validation 3.1 
(|https://jakarta.ee/specifications/bean-validation/3.1/] 
[https://github.com/apache/cxf/pull/1889)]
 * Jakarta Persistence 3.2 ([https://github.com/apache/cxf/pull/1891, 
|https://github.com/apache/cxf/pull/1891] 
[https://jakarta.ee/specifications/persistence/3.2/)|https://jakarta.ee/specifications/persistence/3.2/]
 * Jakarta Annotations 3.0 
([https://jakarta.ee/specifications/annotations/3.0/)]
 * Jakarta Authorization 3.0 
([https://jakarta.ee/specifications/authorization/3.0/)]
 * Jakarta Contexts and Dependency Injection 4.1 
([https://jakarta.ee/specifications/cdi/4.1/)]
 * Jakarta Expression Language 6.0 
([https://jakarta.ee/specifications/expression-language/6.0/)]
 * Jakarta Interceptors 2.2 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta RESTful Web Services 4.0 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta Validation 3.1 
([https://jakarta.ee/specifications/bean-validation/3.1/])
 * Jakarta WebSocket 2.2 ([https://jakarta.ee/specifications/websocket/2.2/])
 * Jakarta Concurrency 3.1 
([https://jakarta.ee/specifications/concurrency/3.1/)]
 * Jakarta Data 1.0 ([https://jakarta.ee/specifications/data/1.0/)]
 * Jakarta Faces 4.1 ([https://jakarta.ee/specifications/faces/4.1/)]
 * Jakarta Pages 4.0 ([https://jakarta.ee/specifications/pages/4.0/)]
 * Jakarta Servlet 6.1 ([https://jakarta.ee/specifications/servlet/6.1/])
 * Jakarta Authentication 3.0 
([https://jakarta.ee/specifications/authentication/3.1/]) 
 * Jakarta Security 4.0 ([https://jakarta.ee/specifications/security/4.0/])

Updates required:

 - Tomcat 11 ([https://www.mail-archive.com/announce@apache.org/msg07789.html])

 - Arquillian Weld

[jira] [Commented] (CXF-9056) NTML Login ends up with Authorization loop detected after upgrading CXF from 3.5 to 3.6

2024-09-30 Thread Freeman Yue Fang (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17885955#comment-17885955
 ] 

Freeman Yue Fang commented on CXF-9056:
---

Hi [~alexandersuter],

This is probably caused by the in-jdk http client used in HttpConduit 
introduced by  CXF 3.6.x.

Could you please test with java system property 
"org.apache.cxf.transport.http.forceURLConnection"  as "true" to switch back to 
use old HttpConduit to see if this helps?

Best Regards
Freeman


> NTML Login ends up with Authorization loop detected after upgrading CXF from 
> 3.5 to 3.6
> ---
>
> Key: CXF-9056
>     URL: https://issues.apache.org/jira/browse/CXF-9056
> Project: CXF
>  Issue Type: Bug
>Reporter: Alexander Suter
>Priority: Major
> Attachments: stacktrace.txt
>
>
> After upgrading cxf from 3.5 to 3.6 we can no longer authenticate with NTLM 
> with CXF as web service client technology.
>  
> We do support two modes in our product. With Challenge and without challenge. 
> And the case without challenge (challenge = false) is no longer working 
> whereas the authentication will be set on the httpConduit directly.
>  
> {code:java}
> public class NTLMAuthenticationFeature implements WebServiceClientFeature {
>  
>  @Override
>  public void initialize(WebServiceClientFeatureContext context) {
>BindingProvider bindingProvider = context.getBindingProvider();
>WsProps props = new WsProps(context.getProperties());
>Client proxy = ClientProxy.getClient(bindingProvider);
>  
>boolean challenge = 
> props.bool(Authentication.NTLM.CHALLENGE).orElse(Boolean.TRUE);
>proxy.getRequestContext().put(AsyncHTTPConduit.USE_ASYNC, challenge);
>var credentials = createNTCredentials(props);
>if (challenge) {
>  proxy.getRequestContext().put(Credentials.class.getName(), credentials);
>} 
>   Conduit conduit = proxy.getConduit();
>   if (conduit instanceof HTTPConduit httpConduit) {
> httpConduit.getClient().setAutoRedirect(true);
>   }
>   if (!challenge) {
>// this does no longer work
>httpConduit.getClient().setAllowChunking(false);
>setNtlmAuthHeader(credentials, httpConduit);
>   }
> }
> private void setNtlmAuthHeader(NTCredentials credentials, HTTPConduit 
> httpConduit) {
>  var auth = httpConduit.getAuthorization();
>  auth.setAuthorizationType("NTLM");
>  auth.setUserName(credentials.getUserPrincipal().getName());
>  auth.setPassword(credentials.getPassword());
> }
> private static NTCredentials createNTCredentials(WsProps properties) {
>  var username = properties.string(Authentication.USERNAME);
>  var password = properties.string(Authentication.PASSWORD);
>  var workstation = properties.string(Authentication.NTLM.WORKSTATION);
>  var domain = properties.string(Authentication.NTLM.DOMAIN);
>  return new NTCredentials(username, password, workstation, domain);
> }
> private static record WsProps(Map props) {
>  
>  String string(String key) {
>  
>  return Optional.ofNullable(props.get(key))
>  .map(String.class::cast)
>  .orElse(null);
>  
>  Optional bool(String key) {
>   return Optional.ofNullable(props.get(key))
>   .map(String.class::cast)
>   .filter(Predicate.not(String::isBlank))
>   .map(Boolean::parseBoolean);
>  }
>  }
> }  {code}
>  
> See the error stack trace in the log.
> Do you have any hints for this problem?
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9035) Fix java.util.ConcurrentModificationException at org.apache.cxf.message.MessageImpl.calcContextCache

2024-09-30 Thread Christian Mattar (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17885876#comment-17885876
 ] 

Christian Mattar commented on CXF-9035:
---

IMHO the correct fix would be to properly synchronize interceptor execution, so 
that they behave the same as in the non-local transport case.

> Fix java.util.ConcurrentModificationException at 
> org.apache.cxf.message.MessageImpl.calcContextCache
> 
>
> Key: CXF-9035
> URL: https://issues.apache.org/jira/browse/CXF-9035
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.8, 3.6.3, 4.0.4
>Reporter: Andriy Redko
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 3.5.10, 3.6.5, 4.0.6
>
>
> {noformat}
> org.apache.cxf.jaxrs.client.logging.RESTLoggingTest.testBinary
> Failing for the past 1 build (Since
> #1182 )
> Took 22 ms.
> Error MessageProblem with reading the data, class java.io.InputStream, 
> ContentType: 
> application/octet-stream.Stacktracejakarta.ws.rs.client.ResponseProcessingException:
>  Problem with reading the data, class java.io.InputStream, ContentType: 
> application/octet-stream.
>     at 
> org.apache.cxf.jaxrs.impl.ResponseImpl.reportMessageHandlerProblem(ResponseImpl.java:553)
>     at 
> org.apache.cxf.jaxrs.impl.ResponseImpl.doReadEntity(ResponseImpl.java:495)
>     at 
> org.apache.cxf.jaxrs.client.AbstractClient.readBody(AbstractClient.java:566)
>     at 
> org.apache.cxf.jaxrs.client.WebClient.handleResponse(WebClient.java:1172)
>     at org.apache.cxf.jaxrs.client.WebClient.doResponse(WebClient.java:1160)
>     at 
> org.apache.cxf.jaxrs.client.WebClient.doChainedInvocation(WebClient.java:1086)
>     at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:931)
>     at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:900)
>     at org.apache.cxf.jaxrs.client.WebClient.invoke(WebClient.java:460)
>     at org.apache.cxf.jaxrs.client.WebClient.get(WebClient.java:640)
>     at 
> org.apache.cxf.jaxrs.client.logging.RESTLoggingTest.testBinary(RESTLoggingTest.java:70)
>     at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>     at java.base/java.lang.reflect.Method.invoke(Method.java:580)
>     at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
>     at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>     at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
>     at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>     at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
>     at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
>     at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
>     at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
>     at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
>     at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
>     at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
>     at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
>     at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:316)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:240)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:214)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:155)
>     at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
>     at 
> org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
>     at 
> org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)
>     at 
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
> Caused by: java.util.ConcurrentModificationException
>     at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1605)
>     at java.base/java.

[jira] [Commented] (CXF-9035) Fix java.util.ConcurrentModificationException at org.apache.cxf.message.MessageImpl.calcContextCache

2024-09-30 Thread Christian Mattar (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17885874#comment-17885874
 ] 

Christian Mattar commented on CXF-9035:
---

The LoggingFeature is installing 
{{org.apache.cxf.ext.logging.LoggingInInterceptor}}
 

which does this:
{noformat}
message.put(LIVE_LOGGING_PROP, Boolean.FALSE);{noformat}
The LocalConduit, which is used here, uses some kind of Multi-Threading setup 
to run the Interceptors concurrently to normal message processing.

This leads to the exception you are seeing.

There's some explicit checking in LocalConduit to not run them using a 
synchronous executor. Doing so deadlocks the message processing.

> Fix java.util.ConcurrentModificationException at 
> org.apache.cxf.message.MessageImpl.calcContextCache
> 
>
> Key: CXF-9035
> URL: https://issues.apache.org/jira/browse/CXF-9035
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.8, 3.6.3, 4.0.4
>Reporter: Andriy Redko
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 3.5.10, 3.6.5, 4.0.6
>
>
> {noformat}
> org.apache.cxf.jaxrs.client.logging.RESTLoggingTest.testBinary
> Failing for the past 1 build (Since
> #1182 )
> Took 22 ms.
> Error MessageProblem with reading the data, class java.io.InputStream, 
> ContentType: 
> application/octet-stream.Stacktracejakarta.ws.rs.client.ResponseProcessingException:
>  Problem with reading the data, class java.io.InputStream, ContentType: 
> application/octet-stream.
>     at 
> org.apache.cxf.jaxrs.impl.ResponseImpl.reportMessageHandlerProblem(ResponseImpl.java:553)
>     at 
> org.apache.cxf.jaxrs.impl.ResponseImpl.doReadEntity(ResponseImpl.java:495)
>     at 
> org.apache.cxf.jaxrs.client.AbstractClient.readBody(AbstractClient.java:566)
>     at 
> org.apache.cxf.jaxrs.client.WebClient.handleResponse(WebClient.java:1172)
>     at org.apache.cxf.jaxrs.client.WebClient.doResponse(WebClient.java:1160)
>     at 
> org.apache.cxf.jaxrs.client.WebClient.doChainedInvocation(WebClient.java:1086)
>     at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:931)
>     at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:900)
>     at org.apache.cxf.jaxrs.client.WebClient.invoke(WebClient.java:460)
>     at org.apache.cxf.jaxrs.client.WebClient.get(WebClient.java:640)
>     at 
> org.apache.cxf.jaxrs.client.logging.RESTLoggingTest.testBinary(RESTLoggingTest.java:70)
>     at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>     at java.base/java.lang.reflect.Method.invoke(Method.java:580)
>     at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
>     at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>     at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
>     at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>     at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
>     at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
>     at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
>     at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
>     at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
>     at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
>     at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
>     at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
>     at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:316)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:240)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:214)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:155)
>     at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
>     at 
> org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:

[jira] [Comment Edited] (CXF-7396) CachedOutputStream doesn't delete temp files

2024-09-28 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-7396?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17885612#comment-17885612
 ] 

Andriy Redko edited comment on CXF-7396 at 9/28/24 8:20 PM:


In some edge cases, the CachedOutputStream instances may not be closed and, if 
backed by temporary files, may fill up the file system (it applies to servers 
and clients). *As a workaround,* the CachedOutputStreamCleaner bus extension 
could be used to provide the custom cleaning mechanism for such dangling cached 
streams (by default, the extension is implemented by 
DelayedCachedOutputStreamCleaner and run periodic cleanup set by 
bus.io.CachedOutputStreamCleaner.Delay bus property, which is set to 30 mins by 
default).

Documentation: 
https://cwiki.apache.org/confluence/display/CXF20DOC/Securing+CXF+Services#SecuringCXFServices-Largedatastreamcaching


was (Author: reta):
In some edge cases, the CachedOutputStream instances may not be closed and, if 
backed by temporary files, may fill up the file system (it applies to servers 
and clients). *As a workaround,* the CachedOutputStreamCleaner bus extension 
could be used to provide the custom cleaning mechanism for such dangling cached 
streams (by default, the extension is implemented by 
DelayedCachedOutputStreamCleaner and run periodic cleanup set by 
bus.io.CachedOutputStreamCleaner.Delay bus property, 30 mins by default).

Documentation: 
https://cwiki.apache.org/confluence/display/CXF20DOC/Securing+CXF+Services#SecuringCXFServices-Largedatastreamcaching

> CachedOutputStream doesn't delete temp files
> 
>
> Key: CXF-7396
> URL: https://issues.apache.org/jira/browse/CXF-7396
> Project: CXF
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 3.1.8
>Reporter: Matthew Roth
>Assignee: Andriy Redko
>Priority: Minor
> Fix For: 3.5.10, 3.6.5, 4.0.6
>
> Attachments: HTTP Request.jmx, Screenshot 2020-05-05 at 10.09.43.png, 
> Screenshot 2020-05-12 at 12.42.11.png, image-2018-05-29-13-58-03-109.png, 
> image-2018-05-29-14-00-16-442.png, image-2018-05-29-14-00-54-215.png
>
>
> In the CachedOutputStream the method maybeDeleteTempFile doesn't always 
> delete the temp file when it should.  
> 
> this.streamList.remove(stream) 
> Doesn't remove the stream, occasionally the stream is not in the list causing 
> the check of this.streamList().isEmpty() to fail.  Also occurs when 
> this.streamList() contains multiple streams.
> This seems occur when too many large requests are processed in a row.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-7396) CachedOutputStream doesn't delete temp files

2024-09-28 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-7396?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17885612#comment-17885612
 ] 

Andriy Redko commented on CXF-7396:
---

In some edge cases, the CachedOutputStream instances may not be closed and, if 
backed by temporary files, may fill up the file system (it applies to servers 
and clients). *As a workaround,* the CachedOutputStreamCleaner bus extension 
could be used to provide the custom cleaning mechanism for such dangling cached 
streams (by default, the extension is implemented by 
DelayedCachedOutputStreamCleaner and run periodic cleanup set by 
bus.io.CachedOutputStreamCleaner.Delay bus property, 30 mins by default).

Documentation: 
https://cwiki.apache.org/confluence/display/CXF20DOC/Securing+CXF+Services#SecuringCXFServices-Largedatastreamcaching

> CachedOutputStream doesn't delete temp files
> 
>
> Key: CXF-7396
> URL: https://issues.apache.org/jira/browse/CXF-7396
> Project: CXF
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 3.1.8
>Reporter: Matthew Roth
>Assignee: Andriy Redko
>Priority: Minor
> Fix For: 3.5.10, 3.6.5, 4.0.6
>
> Attachments: HTTP Request.jmx, Screenshot 2020-05-05 at 10.09.43.png, 
> Screenshot 2020-05-12 at 12.42.11.png, image-2018-05-29-13-58-03-109.png, 
> image-2018-05-29-14-00-16-442.png, image-2018-05-29-14-00-54-215.png
>
>
> In the CachedOutputStream the method maybeDeleteTempFile doesn't always 
> delete the temp file when it should.  
> 
> this.streamList.remove(stream) 
> Doesn't remove the stream, occasionally the stream is not in the list causing 
> the check of this.streamList().isEmpty() to fail.  Also occurs when 
> this.streamList() contains multiple streams.
> This seems occur when too many large requests are processed in a row.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (CXF-7396) CachedOutputStream doesn't delete temp files

2024-09-28 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-7396?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko resolved CXF-7396.
---
Resolution: Fixed

> CachedOutputStream doesn't delete temp files
> 
>
> Key: CXF-7396
> URL: https://issues.apache.org/jira/browse/CXF-7396
> Project: CXF
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 3.1.8
>Reporter: Matthew Roth
>Assignee: Andriy Redko
>Priority: Minor
> Fix For: 3.5.10, 3.6.5, 4.0.6
>
> Attachments: HTTP Request.jmx, Screenshot 2020-05-05 at 10.09.43.png, 
> Screenshot 2020-05-12 at 12.42.11.png, image-2018-05-29-13-58-03-109.png, 
> image-2018-05-29-14-00-16-442.png, image-2018-05-29-14-00-54-215.png
>
>
> In the CachedOutputStream the method maybeDeleteTempFile doesn't always 
> delete the temp file when it should.  
> 
> this.streamList.remove(stream) 
> Doesn't remove the stream, occasionally the stream is not in the list causing 
> the check of this.streamList().isEmpty() to fail.  Also occurs when 
> this.streamList() contains multiple streams.
> This seems occur when too many large requests are processed in a row.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-8828) Support Jakarta EE 11

2024-09-27 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-8828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-8828:
--
Description: 
Support Jakarta EE 11 ([https://jakarta.ee/specifications/platform/11/])

Minimum JDK requirement - JDK-17

 

Specs updates:
 * [Jakarta Validation 3.1 
(|https://jakarta.ee/specifications/bean-validation/3.1/] 
[https://github.com/apache/cxf/pull/1889)]
 * Jakarta Persistence 3.2 ([https://github.com/apache/cxf/pull/1891, 
|https://github.com/apache/cxf/pull/1891] 
[https://jakarta.ee/specifications/persistence/3.2/)|https://jakarta.ee/specifications/persistence/3.2/]
 * Jakarta Annotations 3.0 
([https://jakarta.ee/specifications/annotations/3.0/)]
 * Jakarta Authorization 3.0 
([https://jakarta.ee/specifications/authorization/3.0/)]
 * Jakarta Contexts and Dependency Injection 4.1 
([https://jakarta.ee/specifications/cdi/4.1/)]
 * Jakarta Expression Language 6.0 
([https://jakarta.ee/specifications/expression-language/6.0/)]
 * Jakarta Interceptors 2.2 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta RESTful Web Services 4.0 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta Validation 3.1 
([https://jakarta.ee/specifications/bean-validation/3.1/])
 * Jakarta WebSocket 2.2 ([https://jakarta.ee/specifications/websocket/2.2/])
 * Jakarta Concurrency 3.1 
([https://jakarta.ee/specifications/concurrency/3.1/)]
 * Jakarta Data 1.0 ([https://jakarta.ee/specifications/data/1.0/)]
 * Jakarta Faces 4.1 ([https://jakarta.ee/specifications/faces/4.1/)]
 * Jakarta Pages 4.0 ([https://jakarta.ee/specifications/pages/4.0/)]
 * Jakarta Servlet 6.1 ([https://jakarta.ee/specifications/servlet/6.1/])
 * Jakarta Authentication 3.0 
([https://jakarta.ee/specifications/authentication/3.1/]) 
 * Jakarta Security 4.0 ([https://jakarta.ee/specifications/security/4.0/])

Updates required:

 - Tomcat 11 ([https://www.mail-archive.com/announce@apache.org/msg07789.html])

 - Arquillian Weld Container 4.x ([https://github.com/apache/cxf/pull/1621])

 - Apache ActiveMQ 6 ([https://activemq.apache.org/activemq-600-release])

 - Hibernate Validator 9 
([https://in.relation.to/2024/09/04/hibernate-validator-9-0-0-Beta3/] 
[)|https://in.relation.to/2024/08/01/hibernate-validator-9-0-0-Beta2/)]

 - Hibernate 7 ([https://in.relation.to/2024/08/01/orm-70-beta1/])

 - MicroProfile OpenAPI 4.0 
([https://github.com/eclipse/microprofile-open-api/releases/tag/4.0.1), 
https://github.com/apache/cxf/pull/2078]

 - [MicroProfile Rest 
Client|https://download.eclipse.org/microprofile/microprofile-rest-client-4.0-RC1/microprofile-rest-client-spec-4.0-RC1.pdf]
 4.0 
([https://github.com/eclipse/microprofile-rest-client/releases/tag/4.0|https://github.com/eclipse/microprofile-rest-client/releases/tag/4.0-RC1],
 [https://github.com/apache/cxf/pull/2028])

 

Of interests:
 - 
[https://microprofile.io/2024/08/22/microprofile-7-0-release/|https://microprofile.io/2024/08/22/microprofile-7-0-release/#sidebar]

  was:
Support Jakarta EE 11 ([https://jakarta.ee/specifications/platform/11/])

Minimum JDK requirement - JDK-17

 

Specs updates:
 * [Jakarta Validation 3.1 
(|https://jakarta.ee/specifications/bean-validation/3.1/] 
[https://github.com/apache/cxf/pull/1889)]
 * Jakarta Persistence 3.2 ([https://github.com/apache/cxf/pull/1891, 
|https://github.com/apache/cxf/pull/1891] 
[https://jakarta.ee/specifications/persistence/3.2/)|https://jakarta.ee/specifications/persistence/3.2/]
 * Jakarta Annotations 3.0 
([https://jakarta.ee/specifications/annotations/3.0/)]
 * Jakarta Authorization 3.0 
([https://jakarta.ee/specifications/authorization/3.0/)]
 * Jakarta Contexts and Dependency Injection 4.1 
([https://jakarta.ee/specifications/cdi/4.1/)]
 * Jakarta Expression Language 6.0 
([https://jakarta.ee/specifications/expression-language/6.0/)]
 * Jakarta Interceptors 2.2 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta RESTful Web Services 4.0 
([https://jakarta.ee/specifications/restful-ws/4.0/)]
 * Jakarta Validation 3.1 
([https://jakarta.ee/specifications/bean-validation/3.1/])
 * Jakarta WebSocket 2.2 ([https://jakarta.ee/specifications/websocket/2.2/])
 * Jakarta Concurrency 3.1 
([https://jakarta.ee/specifications/concurrency/3.1/)]
 * Jakarta Data 1.0 ([https://jakarta.ee/specifications/data/1.0/)]
 * Jakarta Faces 4.1 ([https://jakarta.ee/specifications/faces/4.1/)]
 * Jakarta Pages 4.0 ([https://jakarta.ee/specifications/pages/4.0/)]
 * Jakarta Servlet 6.1 ([https://jakarta.ee/specifications/servlet/6.1/])
 * Jakarta Authentication 3.0 
([https://jakarta.ee/specifications/authentication/3.1/]) 
 * Jakarta Security 4.0 ([https://jakarta.ee/specifications/security/4.0/])

Updates required:

 - Tomcat 11 ([https://www.mail-archive.com/announce@apache.org/msg07789.html])

 - Arquillian Weld Container 4.x ([https://github.com/apache/cxf/pull/1621])

 - Apache ActiveMQ 6 ([https

[jira] [Commented] (CXF-8903) Too many open files error in HttpClientHTTPConduit

2024-09-23 Thread Christian Habermehl (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-8903?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17883853#comment-17883853
 ] 

Christian Habermehl commented on CXF-8903:
--

It should be this commit: 
[https://github.com/apache/cxf/commit/3d70de80fb60b74040c0214fc6a28774362556e4]

> Too many open files error in HttpClientHTTPConduit
> --
>
> Key: CXF-8903
> URL: https://issues.apache.org/jira/browse/CXF-8903
> Project: CXF
>  Issue Type: Bug
>  Components: Transports
>Affects Versions: 4.0.2
>Reporter: Jim Ma
>Assignee: Daniel Kulp
>Priority: Major
> Fix For: 3.6.2, 4.0.3, 4.1.0
>
>
> It seems there is resource leak in HttpClientHTTPConduit. When upgrade CXF to 
> 4.0.2, the "lsof" shows there are many files open since it is changed to use 
> JDK's HTTPClient.
> {code:java}
> Caused by: java.lang.InternalError: java.io.IOException: Too many open files
>     at 
> java.net.http/jdk.internal.net.http.HttpClientImpl.(HttpClientImpl.java:311)
>     at 
> java.net.http/jdk.internal.net.http.HttpClientImpl.create(HttpClientImpl.java:253)
>     at 
> java.net.http/jdk.internal.net.http.HttpClientBuilderImpl.build(HttpClientBuilderImpl.java:135)
>     at 
> org.apache.cxf.impl//org.apache.cxf.transport.http.HttpClientHTTPConduit.setupConnection(HttpClientHTTPConduit.java:231)
>     at 
> org.apache.cxf.impl//org.apache.cxf.transport.http.asyncclient.AsyncHTTPConduit.setupConnection(AsyncHTTPConduit.java:190)
>     at 
> org.apache.cxf.impl//org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:529)
>     at 
> org.apache.cxf@4.0.2//org.apache.cxf.transport.TransportURIResolver.resolve(TransportURIResolver.java:133)
>     at 
> org.apache.cxf@4.0.2//org.apache.cxf.catalog.CatalogXmlSchemaURIResolver.resolveEntity(CatalogXmlSchemaURIResolver.java:66)
>     at 
> org.apache.ws.xmlschema//org.apache.ws.commons.schema.SchemaBuilder.resolveXmlSchema(SchemaBuilder.java:682)
>     at 
> org.apache.ws.xmlschema//org.apache.ws.commons.schema.SchemaBuilder.handleImport(SchemaBuilder.java:536)
>     at 
> org.apache.ws.xmlschema//org.apache.ws.commons.schema.SchemaBuilder.handleSchemaElementChild(SchemaBuilder.java:1524)
>     at 
> org.apache.ws.xmlschema//org.apache.ws.commons.schema.SchemaBuilder.handleXmlSchemaElement(SchemaBuilder.java:656)
>     at 
> org.apache.ws.xmlschema//org.apache.ws.commons.schema.XmlSchemaCollection.read(XmlSchemaCollection.java:551)
>     at 
> org.apache.cxf@4.0.2//org.apache.cxf.common.xmlschema.SchemaCollection.read(SchemaCollection.java:129)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl11.SchemaUtil.extractSchema(SchemaUtil.java:145)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl11.SchemaUtil.getSchemas(SchemaUtil.java:74)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl11.SchemaUtil.getSchemas(SchemaUtil.java:66)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl11.SchemaUtil.getSchemas(SchemaUtil.java:61)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl11.WSDLServiceBuilder.getSchemas(WSDLServiceBuilder.java:378)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices(WSDLServiceBuilder.java:345)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices(WSDLServiceBuilder.java:209)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl11.WSDLServiceFactory.create(WSDLServiceFactory.java:161)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromWSDL(ReflectionServiceFactoryBean.java:407)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:527)
>     at 
> org.apache.cxf.impl//org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
>     at 
> org.apache.cxf.impl//org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
>     at 
> org.apache.cxf.impl//org.apache.cxf.jaxws.ServiceImpl.createPort(ServiceImpl.java:466)
>     at 
> org.jboss.ws.jaxws-client@7.0.0-SNAPSHOT//org.jboss.wsf.stack.cxf.client.ProviderImpl$JBossWSServiceImpl.createPort(ProviderImpl.java:580)
>     at 
> org.apache.cxf.impl//org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:342)
>     at 
> org.apache.cxf.impl//org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:337)
>     at 
> jakarta.xml.ws.api@1.0.0.Final//jakarta.xml.ws.Service.getPort(Servi

[jira] [Assigned] (CXF-9061) Update documentation to use Jakarta namespaces as well (where appropriate)

2024-09-21 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko reassigned CXF-9061:
-

Assignee: Andriy Redko

> Update documentation to use Jakarta namespaces as well (where appropriate)
> --
>
> Key: CXF-9061
> URL: https://issues.apache.org/jira/browse/CXF-9061
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.5
>Reporter: Andriy Redko
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> For 4.0.x release, most of XML namespaces have to be switched to Jakarta 
> equivalent ones but our documentation still refers to Java EE mostly 
> everywhere (see please https://issues.apache.org/jira/browse/CXF-9058). We 
> have to update the documentation to show off both options, see please an 
> example of recently fixed documentation here: 
> https://cwiki.apache.org/confluence/display/CXF20DOC/WSDL+to+Java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9061) Update documentation to use Jakarta namespaces as well (where appropriate)

2024-09-21 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9061:
--
Summary: Update documentation to use Jakarta namespaces as well (where 
appropriate)  (was: Update documentation to use Jakarta namespaces where 
appropriate)

> Update documentation to use Jakarta namespaces as well (where appropriate)
> --
>
> Key: CXF-9061
> URL: https://issues.apache.org/jira/browse/CXF-9061
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.5
>Reporter: Andriy Redko
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> For 4.0.x release, most of XML namespaces have to be switched to Jakarta 
> equivalent ones but our documentation still refers to Java EE mostly 
> everywhere (see please https://issues.apache.org/jira/browse/CXF-9058). We 
> have to update the documentation to show off both options, see please an 
> example of recently fixed documentation here: 
> https://cwiki.apache.org/confluence/display/CXF20DOC/WSDL+to+Java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (CXF-9058) jaxws binding example in documentation no more work in v4.x because of jarkarta

2024-09-21 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko resolved CXF-9058.
---
Resolution: Fixed

> jaxws binding example in documentation no more work in v4.x because of 
> jarkarta
> ---
>
> Key: CXF-9058
> URL: https://issues.apache.org/jira/browse/CXF-9058
> Project: CXF
>  Issue Type: Bug
>  Components: Tooling
>Affects Versions: 4.0.0, 4.0.1, 4.0.2, 4.0.3, 4.0.4, 4.0.5
>Reporter: Mathieu CARBONNEAUX
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> in cxf wsdl2java documentation :
> [https://cxf.apache.org/docs/wsdl-to-java.html]
>  
> You have the ability to use JAXWS binding file to customise wsdl2java 
> generation to enable enableWrapperStyle:
>  
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://java.sun.com/xml/ns/jaxws"    
>xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";>    
>false
>  {code}
>  
> and i got this error :
> {noformat}
> org.apache.cxf.tools.common.ToolException: Not a valid jaxb or jaxws binding 
> file, please check the namespace{noformat}
> but with v4.x cxf had upgraded to jakarta and now we need to change 
> namespace:
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://jakarta.ee/xml/ns/jaxws"    
>xmlns:jaxws="http://jakarta.ee/xml/ns/jaxws";>    
>false
>   {code}
> we need to change java.sun.com to jakarta.ee and add version="3.0".
>  
> can you modify documentation to explain the difference between <4.x and >=4.x.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9061) Update documentation to use Jakarta namespaces where appropriate

2024-09-21 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9061:
--
Description: For 4.0.x release, most of XML namespaces have to be switched 
to Jakarta equivalent ones but our documentation still refers to Java EE mostly 
everywhere (see please https://issues.apache.org/jira/browse/CXF-9058). We have 
to update the documentation to show off both options, see please an example of 
recently fixed documentation here: 
https://cwiki.apache.org/confluence/display/CXF20DOC/WSDL+to+Java

> Update documentation to use Jakarta namespaces where appropriate
> 
>
> Key: CXF-9061
> URL: https://issues.apache.org/jira/browse/CXF-9061
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.5
>Reporter: Andriy Redko
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> For 4.0.x release, most of XML namespaces have to be switched to Jakarta 
> equivalent ones but our documentation still refers to Java EE mostly 
> everywhere (see please https://issues.apache.org/jira/browse/CXF-9058). We 
> have to update the documentation to show off both options, see please an 
> example of recently fixed documentation here: 
> https://cwiki.apache.org/confluence/display/CXF20DOC/WSDL+to+Java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9061) Update documentation to use Jakarta namespaces where appropriate

2024-09-21 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9061:
--
Fix Version/s: 4.1.0
   4.0.6

> Update documentation to use Jakarta namespaces where appropriate
> 
>
> Key: CXF-9061
> URL: https://issues.apache.org/jira/browse/CXF-9061
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.5
>Reporter: Andriy Redko
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9061) Update documentation to use Jakarta namespaces where appropriate

2024-09-21 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9061:
--
Affects Version/s: 4.0.5

> Update documentation to use Jakarta namespaces where appropriate
> 
>
> Key: CXF-9061
> URL: https://issues.apache.org/jira/browse/CXF-9061
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.5
>Reporter: Andriy Redko
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9058) jaxws binding example in documentation no more work in v4.x because of jarkarta

2024-09-21 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9058?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17883517#comment-17883517
 ] 

Andriy Redko commented on CXF-9058:
---

Updated https://cwiki.apache.org/confluence/display/CXF20DOC/WSDL+to+Java with 
3.6.x and 4.0.x variants

> jaxws binding example in documentation no more work in v4.x because of 
> jarkarta
> ---
>
> Key: CXF-9058
> URL: https://issues.apache.org/jira/browse/CXF-9058
> Project: CXF
>  Issue Type: Bug
>  Components: Tooling
>Affects Versions: 4.0.0, 4.0.1, 4.0.2, 4.0.3, 4.0.4, 4.0.5
>Reporter: Mathieu CARBONNEAUX
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> in cxf wsdl2java documentation :
> [https://cxf.apache.org/docs/wsdl-to-java.html]
>  
> You have the ability to use JAXWS binding file to customise wsdl2java 
> generation to enable enableWrapperStyle:
>  
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://java.sun.com/xml/ns/jaxws"    
>xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";>    
>false
>  {code}
>  
> and i got this error :
> {noformat}
> org.apache.cxf.tools.common.ToolException: Not a valid jaxb or jaxws binding 
> file, please check the namespace{noformat}
> but with v4.x cxf had upgraded to jakarta and now we need to change 
> namespace:
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://jakarta.ee/xml/ns/jaxws"    
>xmlns:jaxws="http://jakarta.ee/xml/ns/jaxws";>    
>false
>   {code}
> we need to change java.sun.com to jakarta.ee and add version="3.0".
>  
> can you modify documentation to explain the difference between <4.x and >=4.x.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXF-9061) Update documentation to use Jakarta namespaces where appropriate

2024-09-21 Thread Andriy Redko (Jira)
Andriy Redko created CXF-9061:
-

 Summary: Update documentation to use Jakarta namespaces where 
appropriate
 Key: CXF-9061
 URL: https://issues.apache.org/jira/browse/CXF-9061
 Project: CXF
  Issue Type: Bug
Reporter: Andriy Redko






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-21 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko resolved CXF-9059.
---
Resolution: Fixed

> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.0.5, 3.6.4
>Reporter: Jamie Mark Goodyear
>Assignee: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0, 3.6.5, 4.0.6
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> The key issue being addressed here is ephemeral port usage. Once all 
> available ports are in use, the clients are unable to send more messages.
> Controlling ephemeral port usage means the client can more often send 
> messages to the server-side.
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class))
> {.          os.flush();     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (CXF-9060) WSDL2Java Service generation results in 'unused import' warnings

2024-09-21 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko resolved CXF-9060.
---
Resolution: Fixed

> WSDL2Java Service generation results in 'unused import' warnings
> 
>
> Key: CXF-9060
> URL: https://issues.apache.org/jira/browse/CXF-9060
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.5
>Reporter: Andrew Gibb
>Priority: Minor
> Fix For: 4.1.0, 3.6.5, 4.0.6
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> After the fix for CXF-9011 there are now "unused import" warnings for 
> {{java.net.URI}} in some generated Services. This is because the 
> {{URI.create(...).toUrl()}} is only used in some scenarios.
>  
> There is already a conditional check in the {{service.vm}} template around 
> the import for {{java.net.MalformedURLException}} which is used in the same 
> scenario when creating the URL so I believe the import for {{java.net.URI}} 
> belongs in there as well.
>  
> I have tested the conditional import and will submit a pull request



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9060) WSDL2Java Service generation results in 'unused import' warnings

2024-09-20 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9060:
--
Fix Version/s: 3.6.5

> WSDL2Java Service generation results in 'unused import' warnings
> 
>
> Key: CXF-9060
> URL: https://issues.apache.org/jira/browse/CXF-9060
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.5
>Reporter: Andrew Gibb
>Priority: Minor
> Fix For: 4.1.0, 3.6.5, 4.0.6
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> After the fix for CXF-9011 there are now "unused import" warnings for 
> {{java.net.URI}} in some generated Services. This is because the 
> {{URI.create(...).toUrl()}} is only used in some scenarios.
>  
> There is already a conditional check in the {{service.vm}} template around 
> the import for {{java.net.MalformedURLException}} which is used in the same 
> scenario when creating the URL so I believe the import for {{java.net.URI}} 
> belongs in there as well.
>  
> I have tested the conditional import and will submit a pull request



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-20 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko reassigned CXF-9059:
-

Assignee: Jamie Mark Goodyear

> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.0.5, 3.6.4
>Reporter: Jamie Mark Goodyear
>Assignee: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0, 3.6.5, 4.0.6
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> The key issue being addressed here is ephemeral port usage. Once all 
> available ports are in use, the clients are unable to send more messages.
> Controlling ephemeral port usage means the client can more often send 
> messages to the server-side.
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class))
> {.          os.flush();     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-20 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9059:
--
Fix Version/s: 3.6.5

> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.0.5, 3.6.4
>Reporter: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0, 3.6.5, 4.0.6
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> The key issue being addressed here is ephemeral port usage. Once all 
> available ports are in use, the clients are unable to send more messages.
> Controlling ephemeral port usage means the client can more often send 
> messages to the server-side.
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class))
> {.          os.flush();     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-20 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9059:
--
Fix Version/s: 4.0.6

> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.1.0
>Reporter: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> The key issue being addressed here is ephemeral port usage. Once all 
> available ports are in use, the clients are unable to send more messages.
> Controlling ephemeral port usage means the client can more often send 
> messages to the server-side.
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class))
> {.          os.flush();     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-20 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9059:
--
Affects Version/s: 3.6.4

> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.0.5, 3.6.4
>Reporter: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> The key issue being addressed here is ephemeral port usage. Once all 
> available ports are in use, the clients are unable to send more messages.
> Controlling ephemeral port usage means the client can more often send 
> messages to the server-side.
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class))
> {.          os.flush();     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-20 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9059:
--
Affects Version/s: 4.0.5
   (was: 4.1.0)

> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.0.5
>Reporter: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> The key issue being addressed here is ephemeral port usage. Once all 
> available ports are in use, the clients are unable to send more messages.
> Controlling ephemeral port usage means the client can more often send 
> messages to the server-side.
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class))
> {.          os.flush();     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9060) WSDL2Java Service generation results in 'unused import' warnings

2024-09-20 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9060:
--
Fix Version/s: 4.1.0
   4.0.6

> WSDL2Java Service generation results in 'unused import' warnings
> 
>
> Key: CXF-9060
> URL: https://issues.apache.org/jira/browse/CXF-9060
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.5
>Reporter: Andrew Gibb
>Priority: Minor
> Fix For: 4.1.0, 4.0.6
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> After the fix for CXF-9011 there are now "unused import" warnings for 
> {{java.net.URI}} in some generated Services. This is because the 
> {{URI.create(...).toUrl()}} is only used in some scenarios.
>  
> There is already a conditional check in the {{service.vm}} template around 
> the import for {{java.net.MalformedURLException}} which is used in the same 
> scenario when creating the URL so I believe the import for {{java.net.URI}} 
> belongs in there as well.
>  
> I have tested the conditional import and will submit a pull request



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXF-9060) WSDL2Java Service generation results in 'unused import' warnings

2024-09-19 Thread Andrew Gibb (Jira)
Andrew Gibb created CXF-9060:


 Summary: WSDL2Java Service generation results in 'unused import' 
warnings
 Key: CXF-9060
 URL: https://issues.apache.org/jira/browse/CXF-9060
 Project: CXF
  Issue Type: Bug
Affects Versions: 4.0.5
Reporter: Andrew Gibb


After the fix for CXF-9011 there are now "unused import" warnings for 
{{java.net.URI}} in some generated Services. This is because the 
{{URI.create(...).toUrl()}} is only used in some scenarios.
 
There is already a conditional check in the {{service.vm}} template around the 
import for {{java.net.MalformedURLException}} which is used in the same 
scenario when creating the URL so I believe the import for {{java.net.URI}} 
belongs in there as well.
 
I have tested the conditional import and will submit a pull request



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (CXF-9039) Run Jakarta RESTful Web Services 3.1 TCK

2024-09-19 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9039?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17883122#comment-17883122
 ] 

Andriy Redko edited comment on CXF-9039 at 9/19/24 9:35 PM:


Failing tests on initial run:
 * 
[ee.jakarta.tck.ws.rs.ee.rs.container.responsecontext.JAXRSClientIT.getEntityAnnotationsTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.container.responsecontext/JAXRSClientIT/getEntityAnnotationsTest/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.response.JAXRSClientIT.responseCreatedRelativeURITest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.response/JAXRSClientIT/responseCreatedRelativeURITest/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.responsebuilder.JAXRSClientIT.entityObjectTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.responsebuilder/JAXRSClientIT/entityObjectTest/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo.JAXRSClientIT.getMatchedURIsTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo/JAXRSClientIT/getMatchedURIsTest/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo.JAXRSClientIT.getMatchedURIsTest1|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo/JAXRSClientIT/getMatchedURIsTest1/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo.JAXRSClientIT.getMatchedURIsTest2|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo/JAXRSClientIT/getMatchedURIsTest2/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.ext.interceptor.containerwriter.interceptorcontext.JAXRSClientIT.getAnnotationsTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.ext.interceptor.containerwriter.interceptorcontext/JAXRSClientIT/getAnnotationsTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.ssebroadcaster.JAXRSClientIT.sseBroadcastTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.ssebroadcaster/JAXRSClientIT/sseBroadcastTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.stringTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/stringTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.streamingOutputTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/streamingOutputTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.fileTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/fileTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.closeTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/closeTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.inputstreamTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/inputstreamTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.readerTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/readerTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.transformSourceTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/transformSourceTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.multivaluedMapTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/multivaluedMapTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.jaxbElementTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/jaxbElementTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.sseStageCheckTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/sseStageCheckTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.doubleTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClie

[jira] [Commented] (CXF-9039) Run Jakarta RESTful Web Services 3.1 TCK

2024-09-19 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9039?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17883122#comment-17883122
 ] 

Andriy Redko commented on CXF-9039:
---

* 
[ee.jakarta.tck.ws.rs.ee.rs.container.responsecontext.JAXRSClientIT.getEntityAnnotationsTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.container.responsecontext/JAXRSClientIT/getEntityAnnotationsTest/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.response.JAXRSClientIT.responseCreatedRelativeURITest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.response/JAXRSClientIT/responseCreatedRelativeURITest/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.responsebuilder.JAXRSClientIT.entityObjectTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.responsebuilder/JAXRSClientIT/entityObjectTest/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo.JAXRSClientIT.getMatchedURIsTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo/JAXRSClientIT/getMatchedURIsTest/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo.JAXRSClientIT.getMatchedURIsTest1|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo/JAXRSClientIT/getMatchedURIsTest1/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo.JAXRSClientIT.getMatchedURIsTest2|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.core.uriinfo/JAXRSClientIT/getMatchedURIsTest2/]
 * 
[ee.jakarta.tck.ws.rs.ee.rs.ext.interceptor.containerwriter.interceptorcontext.JAXRSClientIT.getAnnotationsTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.ee.rs.ext.interceptor.containerwriter.interceptorcontext/JAXRSClientIT/getAnnotationsTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.ssebroadcaster.JAXRSClientIT.sseBroadcastTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.ssebroadcaster/JAXRSClientIT/sseBroadcastTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.stringTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/stringTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.streamingOutputTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/streamingOutputTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.fileTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/fileTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.closeTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/closeTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.inputstreamTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/inputstreamTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.readerTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/readerTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.transformSourceTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/transformSourceTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.multivaluedMapTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/multivaluedMapTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.jaxbElementTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/jaxbElementTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.sseStageCheckTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/sseStageCheckTest/]
 * 
[ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink.JAXRSClientIT.doubleTest|https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/10/testReport/junit/ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.sseeventsink/JAXRSClientIT/doubleTest/]
 * 
[ee.jakarta.tck.ws.rs.jax

[jira] [Updated] (CXF-9038) Run Jakarta RESTful Web Services 3.0 TCK

2024-09-19 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9038?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9038:
--
Description: 
Run Jakarta RESTful Web Services 3.0 TCK (JakarteEE 9.1): 
https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.0-TCK
Documentation: 
https://cwiki.apache.org/confluence/display/CXF20DOC/JakartaEE+TCKs#JakartaEETCKs-JakartaRESTfulWebServices3.0TCK

  was:Run Jakarta RESTful Web Services 3.0 TCK (JakarteEE 9.1): 
https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.0-TCK


> Run Jakarta RESTful Web Services 3.0 TCK
> 
>
> Key: CXF-9038
> URL: https://issues.apache.org/jira/browse/CXF-9038
> Project: CXF
>  Issue Type: Improvement
>Affects Versions: 4.0.5
>Reporter: Andriy Redko
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 4.0.6
>
>
> Run Jakarta RESTful Web Services 3.0 TCK (JakarteEE 9.1): 
> https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.0-TCK
> Documentation: 
> https://cwiki.apache.org/confluence/display/CXF20DOC/JakartaEE+TCKs#JakartaEETCKs-JakartaRESTfulWebServices3.0TCK



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9039) Run Jakarta RESTful Web Services 3.1 TCK

2024-09-19 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9039:
--
Description: 
Run Jakarta RESTful Web Services 3.1 TCK (JakarteEE 10).

It seems like the Jakarta EE 10 jaxrs TCK is split between:

 - [https://github.com/jakartaee/rest/tree/3.1.0/jersey-tck]

 - [https://github.com/jakartaee/platform-tck/tree/10.0.5] 

Documentation: 
https://cwiki.apache.org/confluence/display/CXF20DOC/JakartaEE+TCKs#JakartaEETCKs-JakartaRESTfulWebServices3.1TCK

  was:
Run Jakarta RESTful Web Services 3.1 TCK (JakarteEE 10).

It seems like the Jakarta EE 10 jaxrs TCK is split between:

 - [https://github.com/jakartaee/rest/tree/3.1.0/jersey-tck]

 - https://github.com/jakartaee/platform-tck/tree/10.0.5 


> Run Jakarta RESTful Web Services 3.1 TCK
> 
>
> Key: CXF-9039
> URL: https://issues.apache.org/jira/browse/CXF-9039
> Project: CXF
>  Issue Type: Improvement
>Reporter: Andriy Redko
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 4.1.0
>
>
> Run Jakarta RESTful Web Services 3.1 TCK (JakarteEE 10).
> It seems like the Jakarta EE 10 jaxrs TCK is split between:
>  - [https://github.com/jakartaee/rest/tree/3.1.0/jersey-tck]
>  - [https://github.com/jakartaee/platform-tck/tree/10.0.5] 
> Documentation: 
> https://cwiki.apache.org/confluence/display/CXF20DOC/JakartaEE+TCKs#JakartaEETCKs-JakartaRESTfulWebServices3.1TCK



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9039) Run Jakarta RESTful Web Services 3.1 TCK

2024-09-19 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9039?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17883032#comment-17883032
 ] 

Andriy Redko commented on CXF-9039:
---

https://ci-builds.apache.org/job/CXF/job/CXF-JAXRS-3.1-TCK/

> Run Jakarta RESTful Web Services 3.1 TCK
> 
>
> Key: CXF-9039
> URL: https://issues.apache.org/jira/browse/CXF-9039
> Project: CXF
>  Issue Type: Improvement
>Reporter: Andriy Redko
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 4.1.0
>
>
> Run Jakarta RESTful Web Services 3.1 TCK (JakarteEE 10).
> It seems like the Jakarta EE 10 jaxrs TCK is split between:
>  - [https://github.com/jakartaee/rest/tree/3.1.0/jersey-tck]
>  - https://github.com/jakartaee/platform-tck/tree/10.0.5 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (CXF-9058) jaxws binding example in documentation no more work in v4.x because of jarkarta

2024-09-18 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko reassigned CXF-9058:
-

Assignee: Andriy Redko

> jaxws binding example in documentation no more work in v4.x because of 
> jarkarta
> ---
>
> Key: CXF-9058
> URL: https://issues.apache.org/jira/browse/CXF-9058
> Project: CXF
>  Issue Type: Bug
>  Components: Tooling
>Affects Versions: 4.0.0, 4.0.1, 4.0.2, 4.0.3, 4.0.4, 4.0.5
>Reporter: Mathieu CARBONNEAUX
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> in cxf wsdl2java documentation :
> [https://cxf.apache.org/docs/wsdl-to-java.html]
>  
> You have the ability to use JAXWS binding file to customise wsdl2java 
> generation to enable enableWrapperStyle:
>  
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://java.sun.com/xml/ns/jaxws"    
>xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";>    
>false
>  {code}
>  
> and i got this error :
> {noformat}
> org.apache.cxf.tools.common.ToolException: Not a valid jaxb or jaxws binding 
> file, please check the namespace{noformat}
> but with v4.x cxf had upgraded to jakarta and now we need to change 
> namespace:
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://jakarta.ee/xml/ns/jaxws"    
>xmlns:jaxws="http://jakarta.ee/xml/ns/jaxws";>    
>false
>   {code}
> we need to change java.sun.com to jakarta.ee and add version="3.0".
>  
> can you modify documentation to explain the difference between <4.x and >=4.x.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9058) jaxws binding example in documentation no more work in v4.x because of jarkarta

2024-09-18 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9058:
--
Fix Version/s: 4.1.0
   4.0.6

> jaxws binding example in documentation no more work in v4.x because of 
> jarkarta
> ---
>
> Key: CXF-9058
> URL: https://issues.apache.org/jira/browse/CXF-9058
> Project: CXF
>  Issue Type: Bug
>  Components: Tooling
>Affects Versions: 4.0.0, 4.0.1, 4.0.2, 4.0.3, 4.0.4, 4.0.5
>Reporter: Mathieu CARBONNEAUX
>Priority: Major
> Fix For: 4.1.0, 4.0.6
>
>
> in cxf wsdl2java documentation :
> [https://cxf.apache.org/docs/wsdl-to-java.html]
>  
> You have the ability to use JAXWS binding file to customise wsdl2java 
> generation to enable enableWrapperStyle:
>  
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://java.sun.com/xml/ns/jaxws"    
>xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";>    
>false
>  {code}
>  
> and i got this error :
> {noformat}
> org.apache.cxf.tools.common.ToolException: Not a valid jaxb or jaxws binding 
> file, please check the namespace{noformat}
> but with v4.x cxf had upgraded to jakarta and now we need to change 
> namespace:
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://jakarta.ee/xml/ns/jaxws"    
>xmlns:jaxws="http://jakarta.ee/xml/ns/jaxws";>    
>false
>   {code}
> we need to change java.sun.com to jakarta.ee and add version="3.0".
>  
> can you modify documentation to explain the difference between <4.x and >=4.x.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-17 Thread Jamie Mark Goodyear (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jamie Mark Goodyear updated CXF-9059:
-
Description: 
HttpConduit should flush output stream ahead of closing connections when 
HttpClient is autocloseable.

When running WebClient in a load test (single host) we'll observe low 
throughput.

When we adjust the HttpConduit to flush output stream ahead of connection 
close, we observe significant throughput improvement. 

The key issue being addressed here is ephemeral port usage. Once all available 
ports are in use, the clients are unable to send more messages.
Controlling ephemeral port usage means the client can more often send messages 
to the server-side.

Given this appears to affect just autocloseable HttpClient, we select to flush 
the output stead only when the JVM provides the autocloseable HttpClient 
variety.
 

AbstractConduit:
finally {
    OutputStream os = msg.getContent(OutputStream.class);
    // Java 21 may hang on close, we flush stream to help close them out.
    if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class))

{.          os.flush();     }

super.close(msg);
}
 

  was:
HttpConduit should flush output stream ahead of closing connections when 
HttpClient is autocloseable.

When running WebClient in a load test (single host) we'll observe low 
throughput.

When we adjust the HttpConduit to flush output stream ahead of connection 
close, we observe significant throughput improvement. 

Given this appears to affect just autocloseable HttpClient, we select to flush 
the output stead only when the JVM provides the autocloseable HttpClient 
variety.
 

AbstractConduit:
finally {
    OutputStream os = msg.getContent(OutputStream.class);
    // Java 21 may hang on close, we flush stream to help close them out.
    if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class)) 
{. 
        os.flush();
    }
super.close(msg);
}
 


> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.1.0
>Reporter: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> The key issue being addressed here is ephemeral port usage. Once all 
> available ports are in use, the clients are unable to send more messages.
> Controlling ephemeral port usage means the client can more often send 
> messages to the server-side.
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class))
> {.          os.flush();     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-17 Thread Jamie Mark Goodyear (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17882445#comment-17882445
 ] 

Jamie Mark Goodyear commented on CXF-9059:
--

Testing notes:

On linux systems, the ss -s command will provide you statistics on socket 
usage. 
We can observe when ephemeral port usage stabilizes.

On MacOS one can use netstat -an | grep IP_ADDRESS_OF_SERVER | wc -l 
To get an idea of connection count.

> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.1.0
>Reporter: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class)) 
> {. 
>         os.flush();
>     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-17 Thread Jamie Mark Goodyear (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17882437#comment-17882437
 ] 

Jamie Mark Goodyear commented on CXF-9059:
--

Windows 11 Pro, 16 clients for ten minutes on Java 17:

{{=Overall Test Result }}

{{Overall Throughput: get 1327.0985260828597 (invocations/sec) }}

{{Overall AVG. response time: 0.753523958739 (ms) }}

{{1.2743023E7 (invocations), running 9602.168 (sec) }}

{{}}

 


{{Windows 11 Pro, 16 clients for ten minutes on Java 21:}}

{{=Overall Test Result }}

{{Overall Throughput: get 1611.1071885223246 (invocations/sec) }}

{{Overall AVG. response time: 0.6206911663755781 (ms) }}

{{1.547066E7 (invocations), running 9602.502 (sec) }}

{{}}

 

The Java 21 runtime obtained higher throughput.

> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.1.0
>Reporter: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class)) 
> {. 
>         os.flush();
>     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-17 Thread Jamie Mark Goodyear (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jamie Mark Goodyear updated CXF-9059:
-
Description: 
HttpConduit should flush output stream ahead of closing connections when 
HttpClient is autocloseable.

When running WebClient in a load test (single host) we'll observe low 
throughput.

When we adjust the HttpConduit to flush output stream ahead of connection 
close, we observe significant throughput improvement. 

Given this appears to affect just autocloseable HttpClient, we select to flush 
the output stead only when the JVM provides the autocloseable HttpClient 
variety.
 

AbstractConduit:
finally {
    OutputStream os = msg.getContent(OutputStream.class);
    // Java 21 may hang on close, we flush stream to help close them out.
    if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class)) 
{. 
        os.flush();
    }
super.close(msg);
}
 

  was:
HttpConduit should flush output stream ahead of closing connections when 
HttpClient is autocloseable.

When running WebClient in a load test (single host) we'll observe low 
throughput.

When we adjust the HttpConduit to flush output stream ahead of connection 
close, we observe significant throughput improvement. 

Given this appears to affect just autocloseable HttpClient, we select to flush 
the output stead only when the JVM provides the autocloseable HttpClient 
variety.


> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable
> 
>
> Key: CXF-9059
> URL: https://issues.apache.org/jira/browse/CXF-9059
> Project: CXF
>  Issue Type: Improvement
>  Components: JAX-RS
>Affects Versions: 4.1.0
>Reporter: Jamie Mark Goodyear
>Priority: Major
> Fix For: 4.1.0
>
>
> HttpConduit should flush output stream ahead of closing connections when 
> HttpClient is autocloseable.
> When running WebClient in a load test (single host) we'll observe low 
> throughput.
> When we adjust the HttpConduit to flush output stream ahead of connection 
> close, we observe significant throughput improvement. 
> Given this appears to affect just autocloseable HttpClient, we select to 
> flush the output stead only when the JVM provides the autocloseable 
> HttpClient variety.
>  
> AbstractConduit:
> finally {
>     OutputStream os = msg.getContent(OutputStream.class);
>     // Java 21 may hang on close, we flush stream to help close them out.
>     if (os != null && AutoCloseable.class.isAssignableFrom(HttpClient.class)) 
> {. 
>         os.flush();
>     }
> super.close(msg);
> }
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXF-9059) HttpConduit should flush output stream ahead of closing connections when HttpClient is autocloseable

2024-09-17 Thread Jamie Mark Goodyear (Jira)
Jamie Mark Goodyear created CXF-9059:


 Summary: HttpConduit should flush output stream ahead of closing 
connections when HttpClient is autocloseable
 Key: CXF-9059
 URL: https://issues.apache.org/jira/browse/CXF-9059
 Project: CXF
  Issue Type: Improvement
  Components: JAX-RS
Affects Versions: 4.1.0
Reporter: Jamie Mark Goodyear
 Fix For: 4.1.0


HttpConduit should flush output stream ahead of closing connections when 
HttpClient is autocloseable.

When running WebClient in a load test (single host) we'll observe low 
throughput.

When we adjust the HttpConduit to flush output stream ahead of connection 
close, we observe significant throughput improvement. 

Given this appears to affect just autocloseable HttpClient, we select to flush 
the output stead only when the JVM provides the autocloseable HttpClient 
variety.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9039) Run Jakarta RESTful Web Services 3.1 TCK

2024-09-16 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9039?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9039:
--
Description: 
Run Jakarta RESTful Web Services 3.1 TCK (JakarteEE 10).

It seems like the Jakarta EE 10 jaxrs TCK is split between:

 - [https://github.com/jakartaee/rest/tree/3.1.0/jersey-tck]

 - https://github.com/jakartaee/platform-tck/tree/10.0.5 

  was:Run Jakarta RESTful Web Services 3.1 TCK (JakarteEE 10)


> Run Jakarta RESTful Web Services 3.1 TCK
> 
>
> Key: CXF-9039
> URL: https://issues.apache.org/jira/browse/CXF-9039
> Project: CXF
>  Issue Type: Improvement
>Reporter: Andriy Redko
>Assignee: Andriy Redko
>Priority: Major
> Fix For: 4.1.0
>
>
> Run Jakarta RESTful Web Services 3.1 TCK (JakarteEE 10).
> It seems like the Jakarta EE 10 jaxrs TCK is split between:
>  - [https://github.com/jakartaee/rest/tree/3.1.0/jersey-tck]
>  - https://github.com/jakartaee/platform-tck/tree/10.0.5 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9058) jaxws binding example in documentation no more work in v4.x because of jarkarta

2024-09-16 Thread Mathieu CARBONNEAUX (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mathieu CARBONNEAUX updated CXF-9058:
-
Description: 
in cxf wsdl2java documentation :

[https://cxf.apache.org/docs/wsdl-to-java.html]

 

You have the ability to use JAXWS binding file to customise wsdl2java 
generation to enable enableWrapperStyle:

 
{code:java}
http://www.w3.org/2001/XMLSchema"; 
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
   wsdlLocation="your.wsdl"
   xmlns="http://java.sun.com/xml/ns/jaxws"    
   xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";>    
   false
 {code}
 

and i got this error :
{noformat}
org.apache.cxf.tools.common.ToolException: Not a valid jaxb or jaxws binding 
file, please check the namespace{noformat}
but with v4.x cxf had upgraded to jakarta and now we need to change 
namespace:
{code:java}
http://www.w3.org/2001/XMLSchema"; 
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
   wsdlLocation="your.wsdl"
   xmlns="http://jakarta.ee/xml/ns/jaxws"    
   xmlns:jaxws="http://jakarta.ee/xml/ns/jaxws";>    
   false
  {code}
we need to change java.sun.com to jakarta.ee and add version="3.0".

 

can you modify documentation to explain the difference between <4.x and >=4.x.

  was:
in cxf wsdl2java documentation :

[https://cxf.apache.org/docs/wsdl-to-java.html]

 

You have the ability to use JAXWS binding file to customise wsdl2java 
generation to enable enableWrapperStyle:

 
{code:java}
http://www.w3.org/2001/XMLSchema"; 
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
   wsdlLocation="your.wsdl"
   xmlns="http://java.sun.com/xml/ns/jaxws"    
   xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";>    
   false
 {code}
 

and i got this error :
{noformat}
org.apache.cxf.tools.common.ToolException: Not a valid jaxb or jaxws binding 
file, please check the namespace{noformat}
but with v4.x cxf had upgraded to jakarta and now we need to change 
namespace:
{code:java}
http://www.w3.org/2001/XMLSchema"; 
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
   wsdlLocation="your.wsdl"
   xmlns="http://jakarta.ee/xml/ns/jaxws"    
   xmlns:jaxws="http://jakarta.ee/xml/ns/jaxws";>    
   false
  {code}
we need to change java.sun.com to jakarta.ee and add version="3.0".

 


> jaxws binding example in documentation no more work in v4.x because of 
> jarkarta
> ---
>
> Key: CXF-9058
> URL: https://issues.apache.org/jira/browse/CXF-9058
> Project: CXF
>  Issue Type: Bug
>  Components: Tooling
>Affects Versions: 4.0.0, 4.0.1, 4.0.2, 4.0.3, 4.0.4, 4.0.5
>Reporter: Mathieu CARBONNEAUX
>Priority: Major
>
> in cxf wsdl2java documentation :
> [https://cxf.apache.org/docs/wsdl-to-java.html]
>  
> You have the ability to use JAXWS binding file to customise wsdl2java 
> generation to enable enableWrapperStyle:
>  
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://java.sun.com/xml/ns/jaxws"    
>xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";>    
>false
>  {code}
>  
> and i got this error :
> {noformat}
> org.apache.cxf.tools.common.ToolException: Not a valid jaxb or jaxws binding 
> file, please check the namespace{noformat}
> but with v4.x cxf had upgraded to jakarta and now we need to change 
> namespace:
> {code:java}
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
>wsdlLocation="your.wsdl"
>xmlns="http://jakarta.ee/xml/ns/jaxws"    
>xmlns:jaxws="http://jakarta.ee/xml/ns/jaxws";>    
>false
>   {code}
> we need to change java.sun.com to jakarta.ee and add version="3.0".
>  
> can you modify documentation to explain the difference between <4.x and >=4.x.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXF-9058) jaxws binding example in documentation no more work in v4.x because of jarkarta

2024-09-16 Thread Mathieu CARBONNEAUX (Jira)
Mathieu CARBONNEAUX created CXF-9058:


 Summary: jaxws binding example in documentation no more work in 
v4.x because of jarkarta
 Key: CXF-9058
 URL: https://issues.apache.org/jira/browse/CXF-9058
 Project: CXF
  Issue Type: Bug
  Components: Tooling
Affects Versions: 4.0.5, 4.0.4, 4.0.3, 4.0.2, 4.0.1, 4.0.0
Reporter: Mathieu CARBONNEAUX


in cxf wsdl2java documentation :

[https://cxf.apache.org/docs/wsdl-to-java.html]

 

You have the ability to use JAXWS binding file to customise wsdl2java 
generation to enable enableWrapperStyle:

 
{code:java}
http://www.w3.org/2001/XMLSchema"; 
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
   wsdlLocation="your.wsdl"
   xmlns="http://java.sun.com/xml/ns/jaxws"    
   xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";>    
   false
 {code}
 

and i got this error :
{noformat}
org.apache.cxf.tools.common.ToolException: Not a valid jaxb or jaxws binding 
file, please check the namespace{noformat}
but with v4.x cxf had upgraded to jakarta and now we need to change 
namespace:
{code:java}
http://www.w3.org/2001/XMLSchema"; 
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    
   wsdlLocation="your.wsdl"
   xmlns="http://jakarta.ee/xml/ns/jaxws"    
   xmlns:jaxws="http://jakarta.ee/xml/ns/jaxws";>    
   false
  {code}
we need to change java.sun.com to jakarta.ee and add version="3.0".

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9034) IllegalAccessError: class org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine

2024-09-16 Thread Joakim Erdfelt (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9034?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17881980#comment-17881980
 ] 

Joakim Erdfelt commented on CXF-9034:
-

The code at 
[https://github.com/apache/cxf/blob/cxf-4.0.4/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java#L596]

References a Jetty 11 class 
`org.eclipse.jetty.server.handler.ContextHandlerCollection` which does exist in 
Jetty 12.x, but is part of Jetty Core, which has all Servlet level dependencies 
removed from it.

Keep in mind that Jetty 12 is now a Jetty Core (with no EE dependencies), and 
Environments (ee11, ee10, ee9, ee8, etc) which has the EE dependencies, like 
Servlet.
 
Looking at your JettyHTTPServerEngine you have a  fair number of changes to 
make, both due to the Jetty 12 version changes, and also due to Java changes 
itself (eg: the SSLv3 code is moot now that you are on Java 17, as it is 
disabled at the JVM level)


> IllegalAccessError: class 
> org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine
> ---
>
> Key: CXF-9034
> URL: https://issues.apache.org/jira/browse/CXF-9034
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 4.0.4
>Reporter: Gary D. Gregory
>Priority: Major
> Fix For: 4.1.0
>
>
> I have a complex and proprietary test that fails with
> {noformat}
> java.lang.IllegalAccessError: class 
> org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine tried to access 
> protected method 'void 
> org.eclipse.jetty.server.Handler$AbstractContainer.()' 
> (org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine and 
> org.eclipse.jetty.server.Handler$AbstractContainer are in unnamed module of 
> loader 'app')
>   at 
> org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.initializeContexts(JettyHTTPServerEngine.java:596)
>   at 
> org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.addServant(JettyHTTPServerEngine.java:397)
>   at 
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.activate(JettyHTTPDestination.java:184)
>   at 
> org.apache.cxf.transport.AbstractObservable.setMessageObserver(AbstractObservable.java:53)
>   at 
> org.apache.cxf.binding.AbstractBindingFactory.addListener(AbstractBindingFactory.java:95)
>   at 
> org.apache.cxf.binding.soap.SoapBindingFactory.addListener(SoapBindingFactory.java:894)
>   at org.apache.cxf.endpoint.ServerImpl.start(ServerImpl.java:130)
>   at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:364)
>   at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:255)
>   at 
> org.apache.cxf.jaxws.spi.ProviderImpl.createAndPublishEndpoint(ProviderImpl.java:130)
>   at jakarta.xml.ws.Endpoint.publish(Endpoint.java:224)
>   at 
> com.seagullsw.appinterface.server.backend.soap.LS38925ClientOperationsTest.beforeClass(LS38925ClientOperationsTest.java:91)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.base/java.lang.reflect.Method.invoke(Method.java:568)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
>   at 
> org.junit.internal.runners.statements.RunBefores.invokeMethod(RunBefores.java:33)
>   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
>   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>   at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
>   at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
>   at org.junit.rules.RunRules.evaluate(RunRules.java:20)
>   at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
>   at 
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:93)
>   at 
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:40)
>   at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests

[jira] [Updated] (CXF-9055) Follow OpenTelemetry semantic conventions for trace span and its attributes

2024-09-14 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9055?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9055:
--
Fix Version/s: 3.5.10

> Follow OpenTelemetry semantic conventions for trace span and its attributes
> ---
>
> Key: CXF-9055
> URL: https://issues.apache.org/jira/browse/CXF-9055
> Project: CXF
>  Issue Type: Improvement
>  Components: Tracing
>Affects Versions: 3.5.9
>Reporter: Emile de Weerd
>Priority: Minor
> Fix For: 4.1.0, 3.5.10, 3.6.5, 4.0.6
>
>
> OpenTelemetry put in place some recommendations around names of the spans and 
> names of their span attributes and their value. All recapped under the 
> semconv project:
> [https://opentelemetry.io/docs/specs/semconv/general/trace/]
> For HTTP exchanges, there are dedicated conventions:
> [https://opentelemetry.io/docs/specs/semconv/http/http-spans/]
> Issue is CXF, since the OpenTelemetry feature, is not following those 
> conventions.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9055) Follow OpenTelemetry semantic conventions for trace span and its attributes

2024-09-13 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9055?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9055:
--
Fix Version/s: 3.6.5

> Follow OpenTelemetry semantic conventions for trace span and its attributes
> ---
>
> Key: CXF-9055
> URL: https://issues.apache.org/jira/browse/CXF-9055
> Project: CXF
>  Issue Type: Improvement
>  Components: Tracing
>Affects Versions: 3.5.9
>Reporter: Emile de Weerd
>Priority: Minor
> Fix For: 4.1.0, 3.6.5, 4.0.6
>
>
> OpenTelemetry put in place some recommendations around names of the spans and 
> names of their span attributes and their value. All recapped under the 
> semconv project:
> [https://opentelemetry.io/docs/specs/semconv/general/trace/]
> For HTTP exchanges, there are dedicated conventions:
> [https://opentelemetry.io/docs/specs/semconv/http/http-spans/]
> Issue is CXF, since the OpenTelemetry feature, is not following those 
> conventions.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (CXF-9055) Follow OpenTelemetry semantic conventions for trace span and its attributes

2024-09-13 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9055?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko resolved CXF-9055.
---
Resolution: Fixed

> Follow OpenTelemetry semantic conventions for trace span and its attributes
> ---
>
> Key: CXF-9055
> URL: https://issues.apache.org/jira/browse/CXF-9055
> Project: CXF
>  Issue Type: Improvement
>  Components: Tracing
>Affects Versions: 3.5.9
>Reporter: Emile de Weerd
>Priority: Minor
> Fix For: 4.1.0, 3.6.5, 4.0.6
>
>
> OpenTelemetry put in place some recommendations around names of the spans and 
> names of their span attributes and their value. All recapped under the 
> semconv project:
> [https://opentelemetry.io/docs/specs/semconv/general/trace/]
> For HTTP exchanges, there are dedicated conventions:
> [https://opentelemetry.io/docs/specs/semconv/http/http-spans/]
> Issue is CXF, since the OpenTelemetry feature, is not following those 
> conventions.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9055) Follow OpenTelemetry semantic conventions for trace span and its attributes

2024-09-13 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9055?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXF-9055:
--
Fix Version/s: 4.0.6

> Follow OpenTelemetry semantic conventions for trace span and its attributes
> ---
>
> Key: CXF-9055
> URL: https://issues.apache.org/jira/browse/CXF-9055
> Project: CXF
>  Issue Type: Improvement
>  Components: Tracing
>Affects Versions: 3.5.9
>Reporter: Emile de Weerd
>Priority: Minor
> Fix For: 4.1.0, 4.0.6
>
>
> OpenTelemetry put in place some recommendations around names of the spans and 
> names of their span attributes and their value. All recapped under the 
> semconv project:
> [https://opentelemetry.io/docs/specs/semconv/general/trace/]
> For HTTP exchanges, there are dedicated conventions:
> [https://opentelemetry.io/docs/specs/semconv/http/http-spans/]
> Issue is CXF, since the OpenTelemetry feature, is not following those 
> conventions.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXF-9057) Chunked Stream is closed regularly when Exception is thrown

2024-09-13 Thread Johannes Herr (Jira)
Johannes Herr created CXF-9057:
--

 Summary: Chunked Stream is closed regularly when Exception is 
thrown
 Key: CXF-9057
 URL: https://issues.apache.org/jira/browse/CXF-9057
 Project: CXF
  Issue Type: Bug
Affects Versions: 3.5.8
Reporter: Johannes Herr


In response to SOAP requests served by Apache CXF we send large datasets 
streamed directly from a database. Because of the size of the data, chunked 
encoding is used. Unfortunately when a database error occurs and an exception 
is thrown while data is sent, the client will receive a regular ending to the 
chunked data stream. That means he has no way to recognise that an error 
occurred and that he has only received a partial file.

To be more specific the response looks somewhat like this:
{code:java}
HTTP/1.1 200 OK
Date: Tue, 10 Sep 2024 16:17:45 GMT
Content-Type: multipart/related; type="application/xop+xml"; 
boundary="uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940"; 
start=""; start-info="text/xml"
Transfer-Encoding: chunked
Server: Jetty(10.0.21)

8000

--uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: binary
Content-ID: 

http://schemas.xmlsoap.org/soap/envelope/";>[...]
--uuid:49aa53f9-ec29-4f1a-bc07-a21256c2f940
Content-Type:
Content-Transfer-Encoding: binary
Content-ID: <03d4ea67-6e8b-4d1f-91b0-b63208989f9...@cxf.apache.org>

[...]xxx
356
xx
0

{code}
That means the response ends with the "0" entry, indicating that the transfer 
is complete.

What should happen instead is that the response should be closed without 
sending the final 0 entry. ([https://stackoverflow.com/a/17203961/136247])

For example when we use a Servlet to stream data to a client a throw an 
exception the result will look something like this:
{code:java}
HTTP/1.1 200 OK
Date: Fri, 13 Sep 2024 09:31:48 GMT
Content-Type: text/plain;charset=utf-8
Transfer-Encoding: chunked
Server: Jetty(10.0.21)

8
Chunk 1

8
Chunk 2

8
Chunk 3

8
Chunk 4

8
Chunk 5
{code}
Here there is no closing 0 marker. As a result clients can recognise the error. 
(Curl will report "curl: (18) transfer closed with outstanding read data 
remaining", Chrome "Failed to load resource: 
net::ERR_INCOMPLETE_CHUNKED_ENCODING")

CXF should do the same and not end the chunked stream regularly, when an 
exception is thrown.

I have tested with Tomcat and Jetty. Both show the same behaviour.

To provide some detail, Exceptions are caught by CXF here:

org/apache/cxf/phase/PhaseInterceptorChain.java:328
{code:java}
} catch (RuntimeException ex) {
if (!faultOccurred) {
faultOccurred = true;
wrapExceptionAsFault(message, ex);
}
state = State.ABORTED;
}
{code}
The exception is logged, but not rethrown.

If the exception would be thrown, for instance Tomcats ErrorReportValve would 
shut down the output and thereby prevent the end of the input and closing 0 to 
be written.

org/apache/catalina/valves/ErrorReportValve.java:112
{code:java}
// Now close immediately to signal to the client that
// something went wrong
response.getCoyoteResponse().action(ActionCode.CLOSE_NOW,

request.getAttribute(RequestDispatcher.ERROR_EXCEPTION));
{code}
Without an exception to prevent this, a regular end of the stream will be 
written by

org/apache/catalina/connector/CoyoteAdapter.java:371

response.finishResponse();

In Summary: CXF ends a chunked encoded stream in a regular way in spite of 
exceptions occurring, which makes it impossible for clients to recognise that 
they have downloaded partial and therefore corrupt data.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (CXFXJC-49) cxf-xjc-dv should not generate deprecated code

2024-09-12 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXFXJC-49?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko resolved CXFXJC-49.

Resolution: Fixed

>  cxf-xjc-dv should not generate deprecated code
> ---
>
> Key: CXFXJC-49
> URL: https://issues.apache.org/jira/browse/CXFXJC-49
> Project: CXF XJC Utils
>  Issue Type: Improvement
>  Components: DV Plugin
>Affects Versions: 3.3.4, 4.0.2
>Reporter: Dries Van Autreve
>Priority: Minor
> Fix For: 4.1.0, 4.0.3, 3.3.5
>
>
> Given the XMLSchema:
> {code:xml}
> 
> {code}
> the plugin generates:
> {code:java}
> public Integer getMyInt() {
> if (null == myInt) {
> return new Integer(1);
> }
> return myInt;
> }
> {code}
> which is deprecated.
> For example compiling with Java 21 gives following warning:
> {noformat}
> Integer(int) in java.lang.Integer has been deprecated and marked for removal
> {noformat}
> The plugin should instead generate:
> {code:java}
> Integer.valueOf(1);
> {code}
> The same goes for Long, Double, ...
> I'll try to provide a PR to change this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXFXJC-49) cxf-xjc-dv should not generate deprecated code

2024-09-12 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXFXJC-49?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXFXJC-49:
---
Fix Version/s: 4.1.0

>  cxf-xjc-dv should not generate deprecated code
> ---
>
> Key: CXFXJC-49
> URL: https://issues.apache.org/jira/browse/CXFXJC-49
> Project: CXF XJC Utils
>  Issue Type: Improvement
>  Components: DV Plugin
>Affects Versions: 3.3.4, 4.0.2
>Reporter: Dries Van Autreve
>Priority: Minor
> Fix For: 4.1.0, 4.0.3, 3.3.5
>
>
> Given the XMLSchema:
> {code:xml}
> 
> {code}
> the plugin generates:
> {code:java}
> public Integer getMyInt() {
> if (null == myInt) {
> return new Integer(1);
> }
> return myInt;
> }
> {code}
> which is deprecated.
> For example compiling with Java 21 gives following warning:
> {noformat}
> Integer(int) in java.lang.Integer has been deprecated and marked for removal
> {noformat}
> The plugin should instead generate:
> {code:java}
> Integer.valueOf(1);
> {code}
> The same goes for Long, Double, ...
> I'll try to provide a PR to change this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXFXJC-49) cxf-xjc-dv should not generate deprecated code

2024-09-12 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXFXJC-49?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXFXJC-49:
---
Fix Version/s: 4.0.3

>  cxf-xjc-dv should not generate deprecated code
> ---
>
> Key: CXFXJC-49
> URL: https://issues.apache.org/jira/browse/CXFXJC-49
> Project: CXF XJC Utils
>  Issue Type: Improvement
>  Components: DV Plugin
>Affects Versions: 4.0.2
>Reporter: Dries Van Autreve
>Priority: Minor
> Fix For: 4.0.3
>
>
> Given the XMLSchema:
> {code:xml}
> 
> {code}
> the plugin generates:
> {code:java}
> public Integer getMyInt() {
> if (null == myInt) {
> return new Integer(1);
> }
> return myInt;
> }
> {code}
> which is deprecated.
> For example compiling with Java 21 gives following warning:
> {noformat}
> Integer(int) in java.lang.Integer has been deprecated and marked for removal
> {noformat}
> The plugin should instead generate:
> {code:java}
> Integer.valueOf(1);
> {code}
> The same goes for Long, Double, ...
> I'll try to provide a PR to change this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXFXJC-49) cxf-xjc-dv should not generate deprecated code

2024-09-12 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXFXJC-49?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXFXJC-49:
---
Affects Version/s: 3.3.4

>  cxf-xjc-dv should not generate deprecated code
> ---
>
> Key: CXFXJC-49
> URL: https://issues.apache.org/jira/browse/CXFXJC-49
> Project: CXF XJC Utils
>  Issue Type: Improvement
>  Components: DV Plugin
>Affects Versions: 3.3.4, 4.0.2
>Reporter: Dries Van Autreve
>Priority: Minor
> Fix For: 4.0.3
>
>
> Given the XMLSchema:
> {code:xml}
> 
> {code}
> the plugin generates:
> {code:java}
> public Integer getMyInt() {
> if (null == myInt) {
> return new Integer(1);
> }
> return myInt;
> }
> {code}
> which is deprecated.
> For example compiling with Java 21 gives following warning:
> {noformat}
> Integer(int) in java.lang.Integer has been deprecated and marked for removal
> {noformat}
> The plugin should instead generate:
> {code:java}
> Integer.valueOf(1);
> {code}
> The same goes for Long, Double, ...
> I'll try to provide a PR to change this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXFXJC-49) cxf-xjc-dv should not generate deprecated code

2024-09-12 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXFXJC-49?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko updated CXFXJC-49:
---
Fix Version/s: 3.3.5

>  cxf-xjc-dv should not generate deprecated code
> ---
>
> Key: CXFXJC-49
> URL: https://issues.apache.org/jira/browse/CXFXJC-49
> Project: CXF XJC Utils
>  Issue Type: Improvement
>  Components: DV Plugin
>Affects Versions: 3.3.4, 4.0.2
>Reporter: Dries Van Autreve
>Priority: Minor
> Fix For: 4.0.3, 3.3.5
>
>
> Given the XMLSchema:
> {code:xml}
> 
> {code}
> the plugin generates:
> {code:java}
> public Integer getMyInt() {
> if (null == myInt) {
> return new Integer(1);
> }
> return myInt;
> }
> {code}
> which is deprecated.
> For example compiling with Java 21 gives following warning:
> {noformat}
> Integer(int) in java.lang.Integer has been deprecated and marked for removal
> {noformat}
> The plugin should instead generate:
> {code:java}
> Integer.valueOf(1);
> {code}
> The same goes for Long, Double, ...
> I'll try to provide a PR to change this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXFXJC-49) cxf-xjc-dv should not generate deprecated code

2024-09-12 Thread Dries Van Autreve (Jira)
Dries Van Autreve created CXFXJC-49:
---

 Summary:  cxf-xjc-dv should not generate deprecated code
 Key: CXFXJC-49
 URL: https://issues.apache.org/jira/browse/CXFXJC-49
 Project: CXF XJC Utils
  Issue Type: Improvement
  Components: DV Plugin
Affects Versions: 4.0.2
Reporter: Dries Van Autreve


Given the XMLSchema:
{code:xml}

{code}
the plugin generates:
{code:java}
public Integer getMyInt() {
if (null == myInt) {
return new Integer(1);
}
return myInt;
}
{code}
which is deprecated.

For example compiling with Java 21 gives following warning:
{noformat}
Integer(int) in java.lang.Integer has been deprecated and marked for removal
{noformat}
The plugin should instead generate:
{code:java}
Integer.valueOf(1);
{code}
The same goes for Long, Double, ...

I'll try to provide a PR to change this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9056) NTML Login ends up with Authorization loop detected after upgrading CXF from 3.5 to 3.6

2024-09-11 Thread Alexander Suter (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9056?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Suter updated CXF-9056:
-
Description: 
After upgrading cxf from 3.5 to 3.6 we can no longer authenticate with NTLM 
with CXF as web service client technology.

 

We do support two modes in our product. With Challenge and without challenge. 
And the case without challenge (challenge = false) is no longer working whereas 
the authentication will be set on the httpConduit directly.

 
{code:java}
public class NTLMAuthenticationFeature implements WebServiceClientFeature {
 
 @Override
 public void initialize(WebServiceClientFeatureContext context) {
   BindingProvider bindingProvider = context.getBindingProvider();
   WsProps props = new WsProps(context.getProperties());
   Client proxy = ClientProxy.getClient(bindingProvider);
 
   boolean challenge = 
props.bool(Authentication.NTLM.CHALLENGE).orElse(Boolean.TRUE);
   proxy.getRequestContext().put(AsyncHTTPConduit.USE_ASYNC, challenge);
   var credentials = createNTCredentials(props);
   if (challenge) {
 proxy.getRequestContext().put(Credentials.class.getName(), credentials);
   } 

  Conduit conduit = proxy.getConduit();
  if (conduit instanceof HTTPConduit httpConduit) {
httpConduit.getClient().setAutoRedirect(true);
  }

  if (!challenge) {
   // this does no longer work
   httpConduit.getClient().setAllowChunking(false);
   setNtlmAuthHeader(credentials, httpConduit);
  }
}


private void setNtlmAuthHeader(NTCredentials credentials, HTTPConduit 
httpConduit) {
 var auth = httpConduit.getAuthorization();
 auth.setAuthorizationType("NTLM");
 auth.setUserName(credentials.getUserPrincipal().getName());
 auth.setPassword(credentials.getPassword());
}

private static NTCredentials createNTCredentials(WsProps properties) {
 var username = properties.string(Authentication.USERNAME);
 var password = properties.string(Authentication.PASSWORD);
 var workstation = properties.string(Authentication.NTLM.WORKSTATION);
 var domain = properties.string(Authentication.NTLM.DOMAIN);
 return new NTCredentials(username, password, workstation, domain);
}

private static record WsProps(Map props) {
 
 String string(String key) {
 
 return Optional.ofNullable(props.get(key))
 .map(String.class::cast)
 .orElse(null);
 

 Optional bool(String key) {
  return Optional.ofNullable(props.get(key))
  .map(String.class::cast)
  .filter(Predicate.not(String::isBlank))
  .map(Boolean::parseBoolean);
 }

 }
}  {code}
 

See the error stack trace in the log.

Do you have any hints for this problem?

 

 

  was:
After upgrading cxf from 3.5 to 3.6 we can no longer authenticate with NTLM 
with CXF as web service client technology.

 

We do support two modes in our product. With Challenge and without challenge. 
And the case without challenge (challenge = false) is no longer working whereas 
the authentication will be set on the httpConduit directly.

 

 

 
{color:#cc6c1d}public{color}{color:#d9e8f7} 
{color}{color:#cc6c1d}class{color}{color:#d9e8f7} 
{color}{color:#1290c3}NTLMAuthenticationFeature{color}{color:#d9e8f7} 
{color}{color:#cc6c1d}implements{color}{color:#d9e8f7} 
{color}{color:#80f2f6}WebServiceClientFeature{color}{color:#d9e8f7} 
{color}{color:#f9faf4}{{color}

 

{color:#d9e8f7} {color}{color:#a0a0a0}@Override{color}

{color:#d9e8f7} {color}{color:#cc6c1d}public{color}{color:#d9e8f7} 
{color}{color:#cc6c1d}void{color}{color:#d9e8f7} 
{color}{color:#1eb540}initialize{color}{color:#f9faf4}({color}{color:#1290c3}WebServiceClientFeatureContext{color}{color:#d9e8f7}
 {color}{color:#79abff}context{color}{color:#f9faf4}){color}{color:#d9e8f7} 
{color}{color:#f9faf4}{{color}

{color:#d9e8f7} {color}{color:#80f2f6}BindingProvider{color}{color:#d9e8f7} 
{color}{color:#f2f200}bindingProvider{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#79abff}context{color}{color:#e6e6fa}.{color}{color:#a7ec21}getBindingProvider{color}{color:#f9faf4}(){color}{color:#e6e6fa};{color}

{color:#d9e8f7} {color}{color:#1290c3}WsProps{color}{color:#d9e8f7} 
{color}{color:#f2f200}props{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#cc6c1d}new{color}{color:#d9e8f7} 
{color}{color:#a7ec21}WsProps{color}{color:#f9faf4}({color}{color:#79abff}context{color}{color:#e6e6fa}.{color}{color:#a7ec21}getProperties{color}{color:#f9faf4}()){color}{color:#e6e6fa};{color}

{color:#d9e8f7} {color}{color:#80f2f6}Client{color}{color:#d9e8f7} 
{color}{color:#f2f200}proxy{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#1290c3}ClientProxy{color}{color:#e6e6fa}.{color}{color:#96ec3f}getClient{color}{color:#f9faf4}({color}{color:#f3ec79}bindingProvider{color}{color:#f9faf4}){color}{color:#e6e6fa};{color}

 

{color:#d9e8f7} {color}{color:#cc6c1d}boolean{color}{color:#d9e8f7} 
{color}{color:#f2f200}challenge{color}{color:#d9e8f

[jira] [Created] (CXF-9056) NTML Login ends up with Authorization loop detected after upgrading CXF from 3.5 to 3.6

2024-09-11 Thread Alexander Suter (Jira)
Alexander Suter created CXF-9056:


 Summary: NTML Login ends up with Authorization loop detected after 
upgrading CXF from 3.5 to 3.6
 Key: CXF-9056
 URL: https://issues.apache.org/jira/browse/CXF-9056
 Project: CXF
  Issue Type: Bug
Reporter: Alexander Suter
 Attachments: stacktrace.txt

After upgrading cxf from 3.5 to 3.6 we can no longer authenticate with NTLM 
with CXF as web service client technology.

 

We do support two modes in our product. With Challenge and without challenge. 
And the case without challenge (challenge = false) is no longer working whereas 
the authentication will be set on the httpConduit directly.

 

 

 
{color:#cc6c1d}public{color}{color:#d9e8f7} 
{color}{color:#cc6c1d}class{color}{color:#d9e8f7} 
{color}{color:#1290c3}NTLMAuthenticationFeature{color}{color:#d9e8f7} 
{color}{color:#cc6c1d}implements{color}{color:#d9e8f7} 
{color}{color:#80f2f6}WebServiceClientFeature{color}{color:#d9e8f7} 
{color}{color:#f9faf4}{{color}

 

{color:#d9e8f7} {color}{color:#a0a0a0}@Override{color}

{color:#d9e8f7} {color}{color:#cc6c1d}public{color}{color:#d9e8f7} 
{color}{color:#cc6c1d}void{color}{color:#d9e8f7} 
{color}{color:#1eb540}initialize{color}{color:#f9faf4}({color}{color:#1290c3}WebServiceClientFeatureContext{color}{color:#d9e8f7}
 {color}{color:#79abff}context{color}{color:#f9faf4}){color}{color:#d9e8f7} 
{color}{color:#f9faf4}{{color}

{color:#d9e8f7} {color}{color:#80f2f6}BindingProvider{color}{color:#d9e8f7} 
{color}{color:#f2f200}bindingProvider{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#79abff}context{color}{color:#e6e6fa}.{color}{color:#a7ec21}getBindingProvider{color}{color:#f9faf4}(){color}{color:#e6e6fa};{color}

{color:#d9e8f7} {color}{color:#1290c3}WsProps{color}{color:#d9e8f7} 
{color}{color:#f2f200}props{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#cc6c1d}new{color}{color:#d9e8f7} 
{color}{color:#a7ec21}WsProps{color}{color:#f9faf4}({color}{color:#79abff}context{color}{color:#e6e6fa}.{color}{color:#a7ec21}getProperties{color}{color:#f9faf4}()){color}{color:#e6e6fa};{color}

{color:#d9e8f7} {color}{color:#80f2f6}Client{color}{color:#d9e8f7} 
{color}{color:#f2f200}proxy{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#1290c3}ClientProxy{color}{color:#e6e6fa}.{color}{color:#96ec3f}getClient{color}{color:#f9faf4}({color}{color:#f3ec79}bindingProvider{color}{color:#f9faf4}){color}{color:#e6e6fa};{color}

 

{color:#d9e8f7} {color}{color:#cc6c1d}boolean{color}{color:#d9e8f7} 
{color}{color:#f2f200}challenge{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#f3ec79}props{color}{color:#e6e6fa}.{color}{color:#a7ec21}bool{color}{color:#f9faf4}({color}{color:#80f2f6}Authentication{color}{color:#e6e6fa}.{color}{color:#80f2f6}NTLM{color}{color:#e6e6fa}.{color}{color:#8ddaf8}CHALLENGE{color}{color:#f9faf4}){color}{color:#e6e6fa}.{color}{color:#a7ec21}orElse{color}{color:#f9faf4}({color}{color:#1290c3}Boolean{color}{color:#e6e6fa}.{color}{color:#8ddaf8}TRUE{color}{color:#f9faf4}){color}{color:#e6e6fa};{color}

{color:#d9e8f7} 
{color}{color:#f3ec79}proxy{color}{color:#e6e6fa}.{color}{color:#80f6a7}getRequestContext{color}{color:#f9faf4}(){color}{color:#e6e6fa}.{color}{color:#80f6a7}put{color}{color:#f9faf4}({color}{color:#1290c3}AsyncHTTPConduit{color}{color:#e6e6fa}.{color}{color:#8ddaf8}USE_ASYNC{color}{color:#e6e6fa},{color}{color:#d9e8f7}
 
{color}{color:#f3ec79}challenge{color}{color:#f9faf4}){color}{color:#e6e6fa};{color}

{color:#d9e8f7} {color}{color:#cc6c1d}var{color}{color:#d9e8f7} 
{color}{color:#f2f200}credentials{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#96ec3f}createNTCredentials{color}{color:#f9faf4}({color}{color:#f3ec79}props{color}{color:#f9faf4}){color}{color:#e6e6fa};{color}

{color:#d9e8f7} {color}{color:#cc6c1d}if{color}{color:#d9e8f7} 
{color}{color:#f9faf4}({color}{color:#f3ec79}challenge{color}{color:#f9faf4}){color}{color:#d9e8f7}
 {color}{color:#f9faf4}{{color}

{color:#d9e8f7} 
{color}{color:#f3ec79}proxy{color}{color:#e6e6fa}.{color}{color:#80f6a7}getRequestContext{color}{color:#f9faf4}(){color}{color:#e6e6fa}.{color}{color:#80f6a7}put{color}{color:#f9faf4}({color}{color:#80f2f6}Credentials{color}{color:#e6e6fa}.{color}{color:#cc6c1d}class{color}{color:#e6e6fa}.{color}{color:#a7ec21}getName{color}{color:#f9faf4}(){color}{color:#e6e6fa},{color}{color:#d9e8f7}
 
{color}{color:#f3ec79}credentials{color}{color:#f9faf4}){color}{color:#e6e6fa};{color}

{color:#d9e8f7} {color}{color:#f9faf4}}{color}

 

{color:#d9e8f7} {color}{color:#80f2f6}Conduit{color}{color:#d9e8f7} 
{color}{color:#f2f200}conduit{color}{color:#d9e8f7} 
{color}{color:#e6e6fa}={color}{color:#d9e8f7} 
{color}{color:#f3ec79}proxy{color}{color:#e6e6fa}.{color}{color:#80f6a7}getConduit

[jira] [Created] (CXF-9055) Follow OpenTelemetry semantic conventions for trace span and its attributes

2024-09-11 Thread Emile de Weerd (Jira)
Emile de Weerd created CXF-9055:
---

 Summary: Follow OpenTelemetry semantic conventions for trace span 
and its attributes
 Key: CXF-9055
 URL: https://issues.apache.org/jira/browse/CXF-9055
 Project: CXF
  Issue Type: Improvement
  Components: Tracing
Affects Versions: 3.5.9
Reporter: Emile de Weerd
 Fix For: 4.1.0


OpenTelemetry put in place some recommendations around names of the spans and 
names of their span attributes and their value. All recapped under the semconv 
project:

[https://opentelemetry.io/docs/specs/semconv/general/trace/]

For HTTP exchanges, there are dedicated conventions:

[https://opentelemetry.io/docs/specs/semconv/http/http-spans/]

Issue is CXF, since the OpenTelemetry feature, is not following those 
conventions.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9053) NullPointer in JaxWsServiceFactoryBean.generatedWrapperBeanClass() when deploying application

2024-09-10 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9053?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17880627#comment-17880627
 ] 

Andriy Redko commented on CXF-9053:
---

[~davidbp] I don't think that Bazel produces a valid self-contained, deployable 
JAR, please check [1], [2], per my understanding the  META-INF/* entries are 
not processed properly, hence you run into issues:

[1] [https://github.com/bazelbuild/bazel/issues/7330]
[2] https://github.com/bazelbuild/bazel/issues/21722

> NullPointer in JaxWsServiceFactoryBean.generatedWrapperBeanClass() when 
> deploying application
> -
>
> Key: CXF-9053
> URL: https://issues.apache.org/jira/browse/CXF-9053
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.1
>Reporter: David Butragueno Palomar
>Priority: Minor
>
> I am using Apache CXF in a Java application built with Bazel to make requests 
> to an external web service. When deploying the microservice locally, for 
> example, using IntelliJ IDEA, the application deploys successfully and works 
> as expected. However, when deploying the application within a Docker 
> container, the microservice fails to deploy due to the following error:
> {code:java}
> java.lang.NullPointerException: null
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
> ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
>  ~[service_deploy.jar:?] {code}
>  
> *Apache CXF dependencies*
> org.apache.cxf:cxf-rt-ws-security
> org.apache.cxf:cxf-rt-frontend-jaxws
> org.apache.cxf:cxf-rt-transports-http
>  
>  
> *JVM options*
>  
> -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
> -Dlog4j2.configurationFile=/resources/log4j2.xml
> -Dlog4j2.debug=true
>  
> *Technical specifications*
> Apache CXF version: 3.5.1
> Java versión: 11.0.4
> Bazel version: 6.3.2
> Docker version: 20.10.12



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9053) NullPointer in JaxWsServiceFactoryBean.generatedWrapperBeanClass() when deploying application

2024-09-09 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9053?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17880442#comment-17880442
 ] 

Andriy Redko commented on CXF-9053:
---

[~davidbp] the problem is very likely related to the way you package your 
application inside the container (fat jar? ...), more details would help here, 
thank you.

> NullPointer in JaxWsServiceFactoryBean.generatedWrapperBeanClass() when 
> deploying application
> -
>
> Key: CXF-9053
> URL: https://issues.apache.org/jira/browse/CXF-9053
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.1
>Reporter: David Butragueno Palomar
>Priority: Minor
>
> I am using Apache CXF in a Java application built with Bazel to make requests 
> to an external web service. When deploying the microservice locally, for 
> example, using IntelliJ IDEA, the application deploys successfully and works 
> as expected. However, when deploying the application within a Docker 
> container, the microservice fails to deploy due to the following error:
> {code:java}
> java.lang.NullPointerException: null
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
> ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
>  ~[service_deploy.jar:?] {code}
>  
> *Apache CXF dependencies*
> org.apache.cxf:cxf-rt-ws-security
> org.apache.cxf:cxf-rt-frontend-jaxws
> org.apache.cxf:cxf-rt-transports-http
>  
>  
> *JVM options*
>  
> -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
> -Dlog4j2.configurationFile=/resources/log4j2.xml
> -Dlog4j2.debug=true
>  
> *Technical specifications*
> Apache CXF version: 3.5.1
> Java versión: 11.0.4
> Bazel version: 6.3.2
> Docker version: 20.10.12



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9053) NullPointer in JaxWsServiceFactoryBean.generatedWrapperBeanClass() when deploying application

2024-09-09 Thread David Butragueno Palomar (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9053?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Butragueno Palomar updated CXF-9053:
--
Description: 
I am using Apache CXF in a Java application built with Bazel to make requests 
to an external web service. When deploying the microservice locally, for 
example, using IntelliJ IDEA, the application deploys successfully and works as 
expected. However, when deploying the application within a Docker container, 
the microservice fails to deploy due to the following error:
{code:java}
java.lang.NullPointerException: null
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
 ~[service_deploy.jar:?] {code}
 

*Apache CXF dependencies*

org.apache.cxf:cxf-rt-ws-security
org.apache.cxf:cxf-rt-frontend-jaxws
org.apache.cxf:cxf-rt-transports-http
 
 

*JVM options*
 
-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
-Dlog4j2.configurationFile=/resources/log4j2.xml
-Dlog4j2.debug=true
 

*Technical specifications*

Apache CXF version: 3.5.1

Java versión: 11.0.4

Bazel version: 6.3.2

Docker version: 20.10.12

  was:
I am utilizing Apache CXF in a Java application built with Bazel to make 
requests to an external web service. When deploying the microservice locally, 
for example, using IntelliJ IDEA, the application deploys successfully and 
functions as expected. However, when deploying the application within a Docker 
container, the microservice fails to deploy due to the following error:
{code:java}
java.lang.NullPointerException: null
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
 ~[service_deploy.jar:?] {code}
 

*Apache-cxf dependencies*

org.apache.cxf:cxf-rt-ws-security
org.apache.cxf:cxf-rt-frontend-jaxws
org.apache.cxf:cxf-rt-transports-http
 
 

*JVM options*
 
-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
-Dlog4j2.configurationFile=/resources/log4j2.xml
-Dlog4j2.debug=true
 

*Technical specifications*

Apache CXF version: 3.5.1

Java versión: 11.0.4

Bazel version: 6.3.2

Docker version: 20.10.12


> NullPointer

[jira] [Updated] (CXF-9053) NullPointer in JaxWsServiceFactoryBean.generatedWrapperBeanClass() when deploying application

2024-09-09 Thread David Butragueno Palomar (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9053?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Butragueno Palomar updated CXF-9053:
--
Priority: Critical  (was: Major)

> NullPointer in JaxWsServiceFactoryBean.generatedWrapperBeanClass() when 
> deploying application
> -
>
> Key: CXF-9053
> URL: https://issues.apache.org/jira/browse/CXF-9053
> Project: CXF
>  Issue Type: Bug
>Affects Versions: 3.5.1
>Reporter: David Butragueno Palomar
>Priority: Critical
>
> I am utilizing Apache CXF in a Java application built with Bazel to make 
> requests to an external web service. When deploying the microservice locally, 
> for example, using IntelliJ IDEA, the application deploys successfully and 
> functions as expected. However, when deploying the application within a 
> Docker container, the microservice fails to deploy due to the following error:
> {code:java}
> java.lang.NullPointerException: null
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
> ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
>  ~[service_deploy.jar:?]
>     at 
> org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
>  ~[service_deploy.jar:?] {code}
>  
> *Apache-cxf dependencies*
> org.apache.cxf:cxf-rt-ws-security
> org.apache.cxf:cxf-rt-frontend-jaxws
> org.apache.cxf:cxf-rt-transports-http
>  
>  
> *JVM options*
>  
> -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
> -Dlog4j2.configurationFile=/resources/log4j2.xml
> -Dlog4j2.debug=true
>  
> *Technical specifications*
> Apache CXF version: 3.5.1
> Java versión: 11.0.4
> Bazel version: 6.3.2
> Docker version: 20.10.12



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9053) NullPointer in JaxWsServiceFactoryBean.java when deploying application

2024-09-09 Thread David Butragueno Palomar (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9053?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Butragueno Palomar updated CXF-9053:
--
Description: 
I am utilizing Apache CXF in a Java application built with Bazel to make 
requests to an external web service. When deploying the microservice locally, 
for example, using IntelliJ IDEA, the application deploys successfully and 
functions as expected. However, when deploying the application within a Docker 
container, the microservice fails to deploy due to the following error:
{code:java}
java.lang.NullPointerException: null
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
 ~[service_deploy.jar:?] {code}
 

*Apache-cxf dependencies*

org.apache.cxf:cxf-rt-ws-security
org.apache.cxf:cxf-rt-frontend-jaxws
org.apache.cxf:cxf-rt-transports-http
 
 

*JVM options*
 
-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
-Dlog4j2.configurationFile=/resources/log4j2.xm
-Dlog4j2.debug=true
 
**

*Technical specifications*

Apache CXF version: 3.5.1

Java versión: 11.0.4

Bazel version: 6.3.2

Docker version: 20.10.12

  was:
I am utilizing Apache CXF in a Java application built with Bazel to make 
requests to an external web service. When deploying the microservice locally, 
for example, using IntelliJ IDEA, the application deploys successfully and 
functions as expected. However, when deploying the application within a Docker 
container, the microservice fails to deploy due to the following error:
{code:java}
java.lang.NullPointerException: null
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
 ~[service_deploy.jar:?] {code}
 

*Apache-cxf dependencies*

org.apache.cxf:cxf-rt-ws-security
org.apache.cxf:cxf-rt-frontend-jaxws
org.apache.cxf:cxf-rt-transports-http
 
 
*JVM options*
 
-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
-Dlog4j2.configurationFile=/resources/log4j2.xm
-Dlog4j2.debug=true
 
*Technical specifications*

Apache CXF version: 3.5.1

Java versión: 11.0.4

Bazel version: 6.3.2

Docker version: 20.10.12


> NullPointer

[jira] [Updated] (CXF-9053) NullPointer in JaxWsServiceFactoryBean.java when deploying application

2024-09-09 Thread David Butragueno Palomar (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9053?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Butragueno Palomar updated CXF-9053:
--
Description: 
I am utilizing Apache CXF in a Java application built with Bazel to make 
requests to an external web service. When deploying the microservice locally, 
for example, using IntelliJ IDEA, the application deploys successfully and 
functions as expected. However, when deploying the application within a Docker 
container, the microservice fails to deploy due to the following error:
{code:java}
java.lang.NullPointerException: null
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
 ~[service_deploy.jar:?] {code}
 

*Apache-cxf dependencies*

org.apache.cxf:cxf-rt-ws-security
org.apache.cxf:cxf-rt-frontend-jaxws
org.apache.cxf:cxf-rt-transports-http
 
 

*JVM options*
 
-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
-Dlog4j2.configurationFile=/resources/log4j2.xml
-Dlog4j2.debug=true
 

*Technical specifications*

Apache CXF version: 3.5.1

Java versión: 11.0.4

Bazel version: 6.3.2

Docker version: 20.10.12

  was:
I am utilizing Apache CXF in a Java application built with Bazel to make 
requests to an external web service. When deploying the microservice locally, 
for example, using IntelliJ IDEA, the application deploys successfully and 
functions as expected. However, when deploying the application within a Docker 
container, the microservice fails to deploy due to the following error:
{code:java}
java.lang.NullPointerException: null
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
 ~[service_deploy.jar:?] {code}
 

*Apache-cxf dependencies*

org.apache.cxf:cxf-rt-ws-security
org.apache.cxf:cxf-rt-frontend-jaxws
org.apache.cxf:cxf-rt-transports-http
 
 

*JVM options*
 
-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
-Dlog4j2.configurationFile=/resources/log4j2.xm
-Dlog4j2.debug=true
 



*Technical specifications*

Apache CXF version: 3.5.1

Java versión: 11.0.4

Bazel version: 6.3.2

Docker version: 20.10.12


> NullPointer

[jira] [Created] (CXF-9053) NullPointer in JaxWsServiceFactoryBean.java when deploying application

2024-09-09 Thread David Butragueno Palomar (Jira)
David Butragueno Palomar created CXF-9053:
-

 Summary: NullPointer in JaxWsServiceFactoryBean.java when 
deploying application
 Key: CXF-9053
 URL: https://issues.apache.org/jira/browse/CXF-9053
 Project: CXF
  Issue Type: Bug
Reporter: David Butragueno Palomar


I am utilizing Apache CXF in a Java application built with Bazel to make 
requests to an external web service. When deploying the microservice locally, 
for example, using IntelliJ IDEA, the application deploys successfully and 
functions as expected. However, when deploying the application within a Docker 
container, the microservice fails to deploy due to the following error:


{code:java}
java.lang.NullPointerException: null
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:670)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) 
~[service_deploy.jar:?]
    at 
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158)
 ~[service_deploy.jar:?]
    at 
org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
 ~[service_deploy.jar:?] {code}
*Apache-cxf dependencies*


org.apache.cxf:cxf-rt-ws-security
org.apache.cxf:cxf-rt-frontend-jaxws
org.apache.cxf:cxf-rt-transports-http
 
 
*JVM options*
 
-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
-Dlog4j2.configurationFile=/resources/log4j2.xm
-Dlog4j2.debug=true
 
*Technical specifications*

Apache CXF version: 3.5.1

Java versión: 11.0.4

Bazel version: 6.3.2

Docker version: 20.10.12



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-8624) CXF Extension @QueryParam("") does not parse correctly LocalDate in the bean

2024-09-08 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-8624?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17880173#comment-17880173
 ] 

Andriy Redko commented on CXF-8624:
---

The JAXB spec [1] is a best place to have the support for JSR 310, the 
[threeten-jaxb|https://github.com/threeten-jaxb/threeten-jaxb] seems to be 
filling this gap at the moment. 

[1] https://github.com/eclipse-ee4j/jaxb-ri/issues/1174

> CXF Extension @QueryParam("") does not parse correctly LocalDate in the bean
> 
>
> Key: CXF-8624
> URL: https://issues.apache.org/jira/browse/CXF-8624
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.3.12, 3.4.5
>Reporter: Anthony Durussel
>Assignee: Andriy Redko
>Priority: Major
>
> If you use the @QueryParam("") extension on a method parameter:
> {code:java}
> public void foo(@QueryParam("") Bar bar);
> {code}
> with Bar class equals to :
> {code:java}
> public class Bar  {
> private LocalDate date;
> } {code}
> The URL generate from the following method parse the localDate as a standard 
> object instead of singleValue as it's done for standard java.util.date
> {code:java}
> org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(Object, 
> String, MultivaluedMap)
> {code}
> {code:java}
> if (isPrimitive(value.getClass()) || 
> Date.class.isAssignableFrom(value.getClass())) {
> values.putSingle(propertyName, value);
> } else if (value.getClass().isEnum()) {
> values.putSingle(propertyName, value.toString());
> } else if (isSupportedCollectionOrArray(value.getClass())) {
> final List theValues;
> if (value.getClass().isArray()) {
> theValues = Arrays.asList((Object[])value);
> } else if (value instanceof Set) {
> theValues = new ArrayList<>((Set)value);
> } else {
> theValues = CastUtils.cast((List)value);
> }
> values.put(propertyName, theValues);
> } else if (Map.class.isAssignableFrom(value.getClass())) {
> if (isSupportedMap(m.getGenericReturnType())) {
> Map map = CastUtils.cast((Map)value);
> for (Map.Entry entry : map.entrySet()) {
> values.add(propertyName + '.' + entry.getKey().toString(),
> entry.getValue().toString());
> }
> }
> } else {
> fillInValuesFromBean(value, propertyName, values);
> }{code}
> Ideally, we should add the LocalDate in the first "if condition" to handle it 
> correctly



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (CXF-8624) CXF Extension @QueryParam("") does not parse correctly LocalDate in the bean

2024-09-08 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-8624?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17880173#comment-17880173
 ] 

Andriy Redko edited comment on CXF-8624 at 9/8/24 6:57 PM:
---

The JAXB spec [1] is the best place to have the support for JSR 310, the 
[threeten-jaxb|https://github.com/threeten-jaxb/threeten-jaxb] seems to be 
filling this gap at the moment.

[1] [https://github.com/eclipse-ee4j/jaxb-ri/issues/1174]


was (Author: reta):
The JAXB spec [1] is a best place to have the support for JSR 310, the 
[threeten-jaxb|https://github.com/threeten-jaxb/threeten-jaxb] seems to be 
filling this gap at the moment. 

[1] https://github.com/eclipse-ee4j/jaxb-ri/issues/1174

> CXF Extension @QueryParam("") does not parse correctly LocalDate in the bean
> 
>
> Key: CXF-8624
> URL: https://issues.apache.org/jira/browse/CXF-8624
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.3.12, 3.4.5
>Reporter: Anthony Durussel
>Assignee: Andriy Redko
>Priority: Major
>
> If you use the @QueryParam("") extension on a method parameter:
> {code:java}
> public void foo(@QueryParam("") Bar bar);
> {code}
> with Bar class equals to :
> {code:java}
> public class Bar  {
> private LocalDate date;
> } {code}
> The URL generate from the following method parse the localDate as a standard 
> object instead of singleValue as it's done for standard java.util.date
> {code:java}
> org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(Object, 
> String, MultivaluedMap)
> {code}
> {code:java}
> if (isPrimitive(value.getClass()) || 
> Date.class.isAssignableFrom(value.getClass())) {
> values.putSingle(propertyName, value);
> } else if (value.getClass().isEnum()) {
> values.putSingle(propertyName, value.toString());
> } else if (isSupportedCollectionOrArray(value.getClass())) {
> final List theValues;
> if (value.getClass().isArray()) {
> theValues = Arrays.asList((Object[])value);
> } else if (value instanceof Set) {
> theValues = new ArrayList<>((Set)value);
> } else {
> theValues = CastUtils.cast((List)value);
> }
> values.put(propertyName, theValues);
> } else if (Map.class.isAssignableFrom(value.getClass())) {
> if (isSupportedMap(m.getGenericReturnType())) {
> Map map = CastUtils.cast((Map)value);
> for (Map.Entry entry : map.entrySet()) {
> values.add(propertyName + '.' + entry.getKey().toString(),
> entry.getValue().toString());
> }
> }
> } else {
> fillInValuesFromBean(value, propertyName, values);
> }{code}
> Ideally, we should add the LocalDate in the first "if condition" to handle it 
> correctly



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9052) LoadDistributorFeature not comaptible with JAX-RS subresources

2024-09-08 Thread Vadim Beilin (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9052?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vadim Beilin updated CXF-9052:
--
Description: 
LoadDistributorTargetSelector seems to be confused by subresources.

I'm attaching a test that demonstrates it below. 
When no clustering features or FailoverFeature is applied, the client tries to 
invoke 'http://localhost:1234/sub/name', as expected. -- `noClustering` and 
`failover` pass.

When LoadDistributorFeature is applied, the request is to 
'http://localhost:1234/name' (path segment contributed by the root resource is 
lost) -- `loadDistributor` fails.

 
---
{code}
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import java.util.List;
import org.apache.cxf.clustering.FailoverFeature;
import org.apache.cxf.clustering.LoadDistributorFeature;
import org.apache.cxf.clustering.SequentialStrategy;
import org.apache.cxf.feature.Feature;
import org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean;
import org.junit.Assert;
import org.junit.Test;

public class ShowBug {

@Test
public void noClustering() {
makeRequest(List.of());
}

@Test
public void failover() {
var failover = new FailoverFeature();
failover.setStrategy(makeStrategy());
makeRequest(List.of(failover));
}

@Test
public void loadDistributor() {
var distro = new LoadDistributorFeature();
distro.setStrategy(makeStrategy());
makeRequest(List.of(distro));
}

private static SequentialStrategy makeStrategy() {
var s = new SequentialStrategy();
s.setAlternateAddresses(List.of("http://localhost:1234";));
return s;
}

private static void makeRequest(List features) {
var fct = new JAXRSClientFactoryBean();
fct.setFeatures(features);
fct.setServiceClass(Root.class);
fct.setAddress("http://localhost:1234";);
try {
fct.create(Root.class).sub().name();
} catch (Exception e) {
Assert.assertTrue(e.getMessage(), 
e.getMessage().contains("/sub/name"));
}
}

interface Root {
@Path("/sub") Sub sub();
}

interface Sub {
@GET @Path("/name") String name();
}
}
{code}
 
 

  was:
LoadDistributorTargetSelector seems to be confused by subresources.

I'm attaching a test that demonstrates it below. 
When no clustering features or FailoverFeature is applied, the client tries to 
invoke 'http://localhost:1234/sub/name', as expected. -- `noClustering` and 
`failover` pass.

When LoadDistributorFeature is applied, the request is to 
'http://localhost:1234/name' (path segment contributed by the root resource is 
lost) -- `loadDistributor` fails.

 
---
 
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import java.util.List;
import org.apache.cxf.clustering.FailoverFeature;
import org.apache.cxf.clustering.LoadDistributorFeature;
import org.apache.cxf.clustering.SequentialStrategy;
import org.apache.cxf.feature.Feature;
import org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean;
import org.junit.Assert;
import org.junit.Test;

public class ShowBug {

    @Test
    public void noClustering() {
    makeRequest(List.of());
    }
    
    @Test
    public void failover() {
    var failover = new FailoverFeature();
    failover.setStrategy(makeStrategy());
    makeRequest(List.of(failover));
    }
    
    @Test
    public void loadDistributor() {
    var distro = new LoadDistributorFeature();
    distro.setStrategy(makeStrategy());
    makeRequest(List.of(distro));
    }

    private static SequentialStrategy makeStrategy() {
    var s = new SequentialStrategy();
    s.setAlternateAddresses(List.of("http://localhost:1234";));
    return s;
    }

    private static void makeRequest(List features) {
    var fct = new JAXRSClientFactoryBean();
    fct.setFeatures(features);
    fct.setServiceClass(Root.class);
    fct.setAddress("http://localhost:1234";);
    try {
    fct.create(Root.class).sub().name();
    } catch (Exception e) {
    Assert.assertTrue(e.getMessage(), 
e.getMessage().contains("/sub/name"));
    }
    }
    
    interface Root {
    @Path("/sub") Sub sub();
    }
    
    interface Sub {
    @GET @Path("/name") String name();
    }
}



 
 


> LoadDistributorFeature not comaptible with JAX-RS subresources
> --
>
> Key: CXF-9052
> URL: https://issues.apache.org/jira/browse/CXF-9052
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>

[jira] [Created] (CXF-9052) LoadDistributorFeature not comaptible with JAX-RS subresources

2024-09-08 Thread Vadim Beilin (Jira)
Vadim Beilin created CXF-9052:
-

 Summary: LoadDistributorFeature not comaptible with JAX-RS 
subresources
 Key: CXF-9052
 URL: https://issues.apache.org/jira/browse/CXF-9052
 Project: CXF
  Issue Type: Bug
  Components: JAX-RS
Affects Versions: 3.6.4, 4.0.5, 3.5.9
Reporter: Vadim Beilin


LoadDistributorTargetSelector seems to be confused by subresources.

I'm attaching a test that demonstrates it below. 
When no clustering features or FailoverFeature is applied, the client tries to 
invoke 'http://localhost:1234/sub/name', as expected. -- `noClustering` and 
`failover` pass.

When LoadDistributorFeature is applied, the request is to 
'http://localhost:1234/name' (path segment contributed by the root resource is 
lost) -- `loadDistributor` fails.

 
---
 
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import java.util.List;
import org.apache.cxf.clustering.FailoverFeature;
import org.apache.cxf.clustering.LoadDistributorFeature;
import org.apache.cxf.clustering.SequentialStrategy;
import org.apache.cxf.feature.Feature;
import org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean;
import org.junit.Assert;
import org.junit.Test;

public class ShowBug {

    @Test
    public void noClustering() {
    makeRequest(List.of());
    }
    
    @Test
    public void failover() {
    var failover = new FailoverFeature();
    failover.setStrategy(makeStrategy());
    makeRequest(List.of(failover));
    }
    
    @Test
    public void loadDistributor() {
    var distro = new LoadDistributorFeature();
    distro.setStrategy(makeStrategy());
    makeRequest(List.of(distro));
    }

    private static SequentialStrategy makeStrategy() {
    var s = new SequentialStrategy();
    s.setAlternateAddresses(List.of("http://localhost:1234";));
    return s;
    }

    private static void makeRequest(List features) {
    var fct = new JAXRSClientFactoryBean();
    fct.setFeatures(features);
    fct.setServiceClass(Root.class);
    fct.setAddress("http://localhost:1234";);
    try {
    fct.create(Root.class).sub().name();
    } catch (Exception e) {
    Assert.assertTrue(e.getMessage(), 
e.getMessage().contains("/sub/name"));
    }
    }
    
    interface Root {
    @Path("/sub") Sub sub();
    }
    
    interface Sub {
    @GET @Path("/name") String name();
    }
}



 
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-8624) CXF Extension @QueryParam("") does not parse correctly LocalDate in the bean

2024-09-06 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-8624?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17879974#comment-17879974
 ] 

Andriy Redko commented on CXF-8624:
---

[~Didier Loiseau] the {{JavaTimeTypesParamConverterProvider }}is a regular 
JAX-RS {color:#00}{color:#00}ParamConverterProvider{color}{color} (see 
please 
[https://docs.oracle.com/javaee/7/api/javax/ws/rs/ext/ParamConverterProvider.html])
 which converts from String to Java 8 JSR 310 Date Time API. I don't think we 
have dedicated documentation for it at the moment.

> Is there a convenient way to generate classes using {{java.time}} without 
> rolling your own adapters and bindings file?

What kind of generator you are using? cxf-wadl2java-plugin or something else?

 

 

> CXF Extension @QueryParam("") does not parse correctly LocalDate in the bean
> 
>
> Key: CXF-8624
> URL: https://issues.apache.org/jira/browse/CXF-8624
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.3.12, 3.4.5
>Reporter: Anthony Durussel
>Assignee: Andriy Redko
>Priority: Major
>
> If you use the @QueryParam("") extension on a method parameter:
> {code:java}
> public void foo(@QueryParam("") Bar bar);
> {code}
> with Bar class equals to :
> {code:java}
> public class Bar  {
> private LocalDate date;
> } {code}
> The URL generate from the following method parse the localDate as a standard 
> object instead of singleValue as it's done for standard java.util.date
> {code:java}
> org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(Object, 
> String, MultivaluedMap)
> {code}
> {code:java}
> if (isPrimitive(value.getClass()) || 
> Date.class.isAssignableFrom(value.getClass())) {
> values.putSingle(propertyName, value);
> } else if (value.getClass().isEnum()) {
> values.putSingle(propertyName, value.toString());
> } else if (isSupportedCollectionOrArray(value.getClass())) {
> final List theValues;
> if (value.getClass().isArray()) {
> theValues = Arrays.asList((Object[])value);
> } else if (value instanceof Set) {
> theValues = new ArrayList<>((Set)value);
> } else {
> theValues = CastUtils.cast((List)value);
> }
> values.put(propertyName, theValues);
> } else if (Map.class.isAssignableFrom(value.getClass())) {
> if (isSupportedMap(m.getGenericReturnType())) {
> Map map = CastUtils.cast((Map)value);
> for (Map.Entry entry : map.entrySet()) {
> values.add(propertyName + '.' + entry.getKey().toString(),
> entry.getValue().toString());
> }
> }
> } else {
> fillInValuesFromBean(value, propertyName, values);
> }{code}
> Ideally, we should add the LocalDate in the first "if condition" to handle it 
> correctly



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9051) SwaggerUI broken after migrate from description-swagger to description-openapi-v3

2024-09-06 Thread Dmitry (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry updated CXF-9051:

Description: 
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

https://github.com/romanov93/cxf-migtaion/tree/master

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!
-

@Configuration
public class SwaggerConfiguration {

@Bean
public OpenApiFeature swaggerFeature()

{ OpenApiFeature swagger = new OpenApiFeature(); swagger.setVersion("1.0.0"); 
//swagger.setBasePath("/"); swagger.setPrettyPrint(true); 
//swagger.setSchemes(new String[]

{"https", "http"}

);
swagger.setContactEmail("exam...@mail.ru");
swagger.setDescription("Swagger cxf app");
swagger.setTitle("Title");
swagger.setSupportSwaggerUi(true);
swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
//swagger.setHost("localhost:8080");
System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
return swagger;
}

}

  was:
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

[https://github.com/romanov93/cxf-migtaion/tree/master|https://github.com/romanov93/cxf-migtaion/tree/master+]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!
-

@Configuration
public class SwaggerConfiguration {

@Bean
public OpenApiFeature swaggerFeature()

{ OpenApiFeature swagger = new OpenApiFeature(); swagger.setVersion("1.0.0"); 
//swagger.setBasePath("/"); swagger.setPrettyPrint(true); 
//swagger.setSchemes(new String[]

{"https", "http"}

);
swagger.setContactEmail("exam...@mail.ru");
swagger.setDescription("Swagger cxf app");
swagger.setTitle("Title");
swagger.setSupportSwaggerUi(true);
swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
//swagger.setHost("localhost:8080");
System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
return swagger;
}

}


> SwaggerUI broken after migrate from description-swagger to 
> description-openapi-v3
> -
>
> Key: CXF-9051
> URL: https://issues.apache.org/jira/browse/CXF-9051
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 4.0.5
>Reporter: Dmitry
>Priority: Major
> Attachments: image-2024-09-06-16-59-13-761.png, 
> image-2024-09-06-17-01-05-729.png
>
>
> I'm upgrading spring boot in my project from 2.7 to 3.0.0
> So changed
> cxf-rt-rs-service-description-swagger -> 
> cxf-rt-rs-service-description-openapi-v3
> After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
> doesn't show my controllers and models anymore("No operations defined in 
> spec").
> Manual creating of cxf.endpoint.Server bean also didnt help me.
> What I do wrong?
> *Code of the problem:*
> https://github.com/romanov93/cxf-migtaion/tree/master
> Spring Boot 2.7.18 and Swagger2Feature:
> !image-2024-09-06-16-59-13-761.png!
> Spring Boot 3.0.0 and OpenApiFeature:
> !image-2024-09-06-17-01-05-729.png!
> Sorry for the stupid question, I don't know where else I can get help with 
> that. Thank!
> -
> @Configuration
> public class SwaggerConfiguration {
> @Bean
>

[jira] [Updated] (CXF-9051) SwaggerUI broken after migrate from description-swagger to description-openapi-v3

2024-09-06 Thread Dmitry (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry updated CXF-9051:

Description: 
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

[https://github.com/romanov93/cxf-migtaion/tree/master|https://github.com/romanov93/cxf-migtaion/tree/master+]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!
-

@Configuration
public class SwaggerConfiguration {

@Bean
public OpenApiFeature swaggerFeature()

{ OpenApiFeature swagger = new OpenApiFeature(); swagger.setVersion("1.0.0"); 
//swagger.setBasePath("/"); swagger.setPrettyPrint(true); 
//swagger.setSchemes(new String[]

{"https", "http"}

);
swagger.setContactEmail("exam...@mail.ru");
swagger.setDescription("Swagger cxf app");
swagger.setTitle("Title");
swagger.setSupportSwaggerUi(true);
swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
//swagger.setHost("localhost:8080");
System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
return swagger;
}

}

  was:
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

+[https://github.com/romanov93/cxf-migtaion/tree/master+]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!
-

@Configuration
public class SwaggerConfiguration {

@Bean
public OpenApiFeature swaggerFeature()

{ OpenApiFeature swagger = new OpenApiFeature(); swagger.setVersion("1.0.0"); 
//swagger.setBasePath("/"); swagger.setPrettyPrint(true); 
//swagger.setSchemes(new String[]

{"https", "http"}

);
swagger.setContactEmail("exam...@mail.ru");
swagger.setDescription("Swagger cxf app");
swagger.setTitle("Title");
swagger.setSupportSwaggerUi(true);
swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
//swagger.setHost("localhost:8080");
System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
return swagger;
}

}


> SwaggerUI broken after migrate from description-swagger to 
> description-openapi-v3
> -
>
> Key: CXF-9051
> URL: https://issues.apache.org/jira/browse/CXF-9051
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 4.0.5
>Reporter: Dmitry
>Priority: Major
> Attachments: image-2024-09-06-16-59-13-761.png, 
> image-2024-09-06-17-01-05-729.png
>
>
> I'm upgrading spring boot in my project from 2.7 to 3.0.0
> So changed
> cxf-rt-rs-service-description-swagger -> 
> cxf-rt-rs-service-description-openapi-v3
> After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
> doesn't show my controllers and models anymore("No operations defined in 
> spec").
> Manual creating of cxf.endpoint.Server bean also didnt help me.
> What I do wrong?
> *Code of the problem:*
> [https://github.com/romanov93/cxf-migtaion/tree/master|https://github.com/romanov93/cxf-migtaion/tree/master+]
> Spring Boot 2.7.18 and Swagger2Feature:
> !image-2024-09-06-16-59-13-761.png!
> Spring Boot 3.0.0 and OpenApiFeature:
> !image-2024-09-06-17-01-05-729.png!
> Sorry for the stupid question, I don't know where else I can get help with 
> that. Thank!
> -
> @Configuration
> public class

[jira] [Updated] (CXF-9051) SwaggerUI broken after migrate from description-swagger to description-openapi-v3

2024-09-06 Thread Dmitry (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry updated CXF-9051:

Description: 
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

+[https://github.com/romanov93/cxf-migtaion/tree/master+]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!
-

@Configuration
public class SwaggerConfiguration {

@Bean
public OpenApiFeature swaggerFeature()

{ OpenApiFeature swagger = new OpenApiFeature(); swagger.setVersion("1.0.0"); 
//swagger.setBasePath("/"); swagger.setPrettyPrint(true); 
//swagger.setSchemes(new String[]

{"https", "http"}

);
swagger.setContactEmail("exam...@mail.ru");
swagger.setDescription("Swagger cxf app");
swagger.setTitle("Title");
swagger.setSupportSwaggerUi(true);
swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
//swagger.setHost("localhost:8080");
System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
return swagger;
}

}

  was:
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

+[https://github.com/romanov93/cxf-migtaion/tree/master+]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!
-

@Configuration
public class SwaggerConfiguration {

@Bean
public OpenApiFeature swaggerFeature()

{ OpenApiFeature swagger = new OpenApiFeature(); swagger.setVersion("1.0.0"); 
//swagger.setBasePath("/"); swagger.setPrettyPrint(true); 
//swagger.setSchemes(new String[]

{"https", "http"}

);
swagger.setContactEmail("exam...@mail.ru");
swagger.setDescription("Swagger cxf app");
swagger.setTitle("Title");
swagger.setSupportSwaggerUi(true);
swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
//swagger.setHost("localhost:8080");
System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
return swagger;
}

// @Bean

// public Server jaxRsServer(Bus bus, UserController userController){

// final JAXRSServerFactoryBean factory = new JAXRSServerFactoryBean();

// factory.setServiceBean(userController);

// factory.setProvider(new JacksonJsonProvider());

// factory.setFeatures(Arrays.asList(swaggerFeature()));

// factory.setBus(bus); // factory.setAddress("/");

// return factory.create();

// }

}


> SwaggerUI broken after migrate from description-swagger to 
> description-openapi-v3
> -
>
> Key: CXF-9051
> URL: https://issues.apache.org/jira/browse/CXF-9051
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 4.0.5
>Reporter: Dmitry
>Priority: Major
> Attachments: image-2024-09-06-16-59-13-761.png, 
> image-2024-09-06-17-01-05-729.png
>
>
> I'm upgrading spring boot in my project from 2.7 to 3.0.0
> So changed
> cxf-rt-rs-service-description-swagger -> 
> cxf-rt-rs-service-description-openapi-v3
> After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
> doesn't show my controllers and models anymore("No operations defined in 
> spec").
> Manual creating of cxf.endpoint.Server bean also didnt help me.
> What I do wrong?
> *Code of the problem:*
> +[https://github.com/romanov93/cxf-migtaion/tree/master+]
> Spring Boot 2.7.18 and Swagger2Feature:
> !image-2024-09-06-16-59-13-761.png!
> Sp

[jira] [Updated] (CXF-9051) SwaggerUI broken after migrate from description-swagger to description-openapi-v3

2024-09-06 Thread Dmitry (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry updated CXF-9051:

Description: 
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

+[https://github.com/romanov93/cxf-migtaion/tree/master+]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!
-

@Configuration
public class SwaggerConfiguration {

@Bean
public OpenApiFeature swaggerFeature()

{ OpenApiFeature swagger = new OpenApiFeature(); swagger.setVersion("1.0.0"); 
//swagger.setBasePath("/"); swagger.setPrettyPrint(true); 
//swagger.setSchemes(new String[]\\{"https", "http"}

);
swagger.setContactEmail("exam...@mail.ru");
swagger.setDescription("Swagger cxf app");
swagger.setTitle("Title");
swagger.setSupportSwaggerUi(true);
swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
//swagger.setHost("localhost:8080");
System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
return swagger;
}

// @Bean
// public Server jaxRsServer(Bus bus, UserController userController)

{ // final JAXRSServerFactoryBean factory = new JAXRSServerFactoryBean(); // // 
factory.setServiceBean(userController); // factory.setProvider(new 
JacksonJsonProvider()); // 
factory.setFeatures(Arrays.asList(swaggerFeature())); // factory.setBus(bus); 
// factory.setAddress("/"); // return factory.create(); // }

}

  was:
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

+https://github.com/romanov93/cxf-migtaion/tree/master+

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!


> SwaggerUI broken after migrate from description-swagger to 
> description-openapi-v3
> -
>
> Key: CXF-9051
> URL: https://issues.apache.org/jira/browse/CXF-9051
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 4.0.5
>Reporter: Dmitry
>Priority: Major
> Attachments: image-2024-09-06-16-59-13-761.png, 
> image-2024-09-06-17-01-05-729.png
>
>
> I'm upgrading spring boot in my project from 2.7 to 3.0.0
> So changed
> cxf-rt-rs-service-description-swagger -> 
> cxf-rt-rs-service-description-openapi-v3
> After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
> doesn't show my controllers and models anymore("No operations defined in 
> spec").
> Manual creating of cxf.endpoint.Server bean also didnt help me.
> What I do wrong?
> *Code of the problem:*
> +[https://github.com/romanov93/cxf-migtaion/tree/master+]
> Spring Boot 2.7.18 and Swagger2Feature:
> !image-2024-09-06-16-59-13-761.png!
> Spring Boot 3.0.0 and OpenApiFeature:
> !image-2024-09-06-17-01-05-729.png!
> Sorry for the stupid question, I don't know where else I can get help with 
> that. Thank!
> -
> @Configuration
> public class SwaggerConfiguration {
> @Bean
> public OpenApiFeature swaggerFeature()
> { OpenApiFeature swagger = new OpenApiFeature(); swagger.setVersion("1.0.0"); 
> //swagger.setBasePath("/"); swagger.setPrettyPrint(true); 
> //swagger.setSchemes(new String[]\\{"https", "http"}
> );
> swagger.setContactEmail("exam...@mail.ru");
> swagger.setDescription("Swagger cxf app");
> swagger.setTitle("Title");
> swa

[jira] [Updated] (CXF-9051) SwaggerUI broken after migrate from

2024-09-06 Thread Dmitry (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry updated CXF-9051:

Description: 
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

*Code of the problem:*

[https://github.com/romanov93/cxf-migtaion/blob/master/src/main/java/com/example/cxfmigration/SwaggerConfiguration.java]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!

Sorry for the stupid question, I don't know where else I can get help with 
that. Thank!

  was:
I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

[https://github.com/romanov93/cxf-migtaion/blob/master/src/main/java/com/example/cxfmigration/SwaggerConfiguration.java]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!


> SwaggerUI broken after migrate from 
> 
>
> Key: CXF-9051
> URL: https://issues.apache.org/jira/browse/CXF-9051
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 4.0.5
> Environment: @Configuration
> public class SwaggerConfiguration {
> @Bean
> public OpenApiFeature swaggerFeature() {
> OpenApiFeature swagger = new OpenApiFeature();
> swagger.setVersion("1.0.0");
> //swagger.setBasePath("/");
> swagger.setPrettyPrint(true);
> //swagger.setSchemes(new String[]\{"https", "http"});
> swagger.setContactEmail("exam...@mail.ru");
> swagger.setDescription("Swagger cxf app");
> swagger.setTitle("Title");
> swagger.setSupportSwaggerUi(true);
> swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
> //swagger.setHost("localhost:8080");
> System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
> return swagger;
> }
> // @Bean
> // public Server jaxRsServer(Bus bus, UserController userController) {
> // final JAXRSServerFactoryBean factory = new JAXRSServerFactoryBean();
> //
> // factory.setServiceBean(userController);
> // factory.setProvider(new JacksonJsonProvider());
> // factory.setFeatures(Arrays.asList(swaggerFeature()));
> // factory.setBus(bus);
> // factory.setAddress("/");
> // return factory.create();
> // }
> }
>Reporter: Dmitry
>Priority: Major
> Attachments: image-2024-09-06-16-59-13-761.png, 
> image-2024-09-06-17-01-05-729.png
>
>
> I'm upgrading spring boot in my project from 2.7 to 3.0.0
> So changed
> cxf-rt-rs-service-description-swagger -> 
> cxf-rt-rs-service-description-openapi-v3
> After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
> doesn't show my controllers and models anymore("No operations defined in 
> spec").
> Manual creating of cxf.endpoint.Server bean also didnt help me.
> What I do wrong?
> *Code of the problem:*
> [https://github.com/romanov93/cxf-migtaion/blob/master/src/main/java/com/example/cxfmigration/SwaggerConfiguration.java]
> Spring Boot 2.7.18 and Swagger2Feature:
> !image-2024-09-06-16-59-13-761.png!
> Spring Boot 3.0.0 and OpenApiFeature:
> !image-2024-09-06-17-01-05-729.png!
> Sorry for the stupid question, I don't know where else I can get help with 
> that. Thank!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (CXF-9051) SwaggerUI broken after migrate from

2024-09-06 Thread Dmitry (Jira)
Dmitry created CXF-9051:
---

 Summary: SwaggerUI broken after migrate from 
 Key: CXF-9051
 URL: https://issues.apache.org/jira/browse/CXF-9051
 Project: CXF
  Issue Type: Bug
  Components: JAX-RS
Affects Versions: 4.0.5
 Environment: @Configuration
public class SwaggerConfiguration {

@Bean
public OpenApiFeature swaggerFeature() {
OpenApiFeature swagger = new OpenApiFeature();
swagger.setVersion("1.0.0");
//swagger.setBasePath("/");
swagger.setPrettyPrint(true);
//swagger.setSchemes(new String[]\{"https", "http"});
swagger.setContactEmail("exam...@mail.ru");
swagger.setDescription("Swagger cxf app");
swagger.setTitle("Title");
swagger.setSupportSwaggerUi(true);
swagger.setSwaggerUiConfig(new SwaggerUiConfig().configUrl("/openapi.json"));
//swagger.setHost("localhost:8080");
System.out.println("http://localhost:8080/api-docs?url=/openapi.json";);
return swagger;
}

// @Bean
// public Server jaxRsServer(Bus bus, UserController userController) {
// final JAXRSServerFactoryBean factory = new JAXRSServerFactoryBean();
//
// factory.setServiceBean(userController);
// factory.setProvider(new JacksonJsonProvider());
// factory.setFeatures(Arrays.asList(swaggerFeature()));
// factory.setBus(bus);
// factory.setAddress("/");
// return factory.create();
// }

}
Reporter: Dmitry
 Attachments: image-2024-09-06-16-59-13-761.png, 
image-2024-09-06-17-01-05-729.png

I'm upgrading spring boot in my project from 2.7 to 3.0.0
So changed
cxf-rt-rs-service-description-swagger -> 
cxf-rt-rs-service-description-openapi-v3
After that I try just replace Swagger2Feature to OpenApiFuture and swagger-ui 
doesn't show my controllers and models anymore("No operations defined in spec").
Manual creating of cxf.endpoint.Server bean also didnt help me.
What I do wrong?

[https://github.com/romanov93/cxf-migtaion/blob/master/src/main/java/com/example/cxfmigration/SwaggerConfiguration.java]

Spring Boot 2.7.18 and Swagger2Feature:
!image-2024-09-06-16-59-13-761.png!

Spring Boot 3.0.0 and OpenApiFeature:
!image-2024-09-06-17-01-05-729.png!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (CXF-9050) Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import

2024-08-31 Thread Andriy Redko (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9050?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andriy Redko closed CXF-9050.
-
Resolution: Won't Fix

> Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import
> 
>
> Key: CXF-9050
> URL: https://issues.apache.org/jira/browse/CXF-9050
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.6.4
>Reporter: Dmitry
>Priority: Major
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
> But *DefaultApplicationFactory.class* have {*}javax{*}.ws.rs.core.Application 
> import instead of jakarta.
> As a result, an error occurs when 
> org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
> .createServer() method:
> """
> Error creating bean with name 'jaxRsServer' defined in class path resource 
> [org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
> instantiate [org.apache.cxf.endpoint.Server]: *Factory method 'jaxRsServer' 
> threw exception with message: javax/ws/rs/core/Application*
> """
> _Thank Apache team for your work and support!_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (CXF-9050) Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import

2024-08-31 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17878357#comment-17878357
 ] 

Andriy Redko edited comment on CXF-9050 at 8/31/24 3:38 PM:


[~this.romanov] Apache CXF 3.6.x branch uses 'javax.' ** namespaces (moreover, 
Swagger Core 1.6.x only works with 'javax.'), please check your dependencies.


was (Author: reta):
[~this.romanov] Apache CXF 3.6.x branch uses `javax.*` namespaces (moreover, 
Swagger Core 1.6.x only works with `javax.*`), please check your dependencies.

> Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import
> 
>
> Key: CXF-9050
> URL: https://issues.apache.org/jira/browse/CXF-9050
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.6.4
>Reporter: Dmitry
>Priority: Major
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
> But *DefaultApplicationFactory.class* have {*}javax{*}.ws.rs.core.Application 
> import instead of jakarta.
> As a result, an error occurs when 
> org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
> .createServer() method:
> """
> Error creating bean with name 'jaxRsServer' defined in class path resource 
> [org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
> instantiate [org.apache.cxf.endpoint.Server]: *Factory method 'jaxRsServer' 
> threw exception with message: javax/ws/rs/core/Application*
> """
> _Thank Apache team for your work and support!_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (CXF-9050) Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import

2024-08-31 Thread Andriy Redko (Jira)


[ 
https://issues.apache.org/jira/browse/CXF-9050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17878357#comment-17878357
 ] 

Andriy Redko commented on CXF-9050:
---

[~this.romanov] Apache CXF 3.6.x branch uses `javax.*` namespaces (moreover, 
Swagger Core 1.6.x only works with `javax.*`), please check your dependencies.

> Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import
> 
>
> Key: CXF-9050
> URL: https://issues.apache.org/jira/browse/CXF-9050
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.6.4
>Reporter: Dmitry
>Priority: Major
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
> But *DefaultApplicationFactory.class* have {*}javax{*}.ws.rs.core.Application 
> import instead of jakarta.
> As a result, an error occurs when 
> org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
> .createServer() method:
> """
> Error creating bean with name 'jaxRsServer' defined in class path resource 
> [org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
> instantiate [org.apache.cxf.endpoint.Server]: *Factory method 'jaxRsServer' 
> threw exception with message: javax/ws/rs/core/Application*
> """
> _Thank Apache team for your work and support!_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9050) Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import

2024-08-30 Thread Dmitry (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9050?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry updated CXF-9050:

Description: 
cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
But *DefaultApplicationFactory.class* have {*}javax{*}.ws.rs.core.Application 
import instead of jakarta.

As a result, an error occurs when 
org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
.createServer() method:

"""

Error creating bean with name 'jaxRsServer' defined in class path resource 
[org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
instantiate [org.apache.cxf.endpoint.Server]: *Factory method 'jaxRsServer' 
threw exception with message: javax/ws/rs/core/Application*
"""

_Thank Apache team for your work and support!_

  was:
cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
But DefaultApplicationFactory.class have {*}javax{*}.ws.rs.core.Application 
import instead of jakarta.

As a result, an error occurs when 
org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
.createServer() method:

"""

Error creating bean with name 'jaxRsServer' defined in class path resource 
[org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
instantiate [org.apache.cxf.endpoint.Server]: Factory method 'jaxRsServer' 
threw exception with message: javax/ws/rs/core/Application
"""

_Thank Apache team for your work and support!_


> Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import
> ----
>
> Key: CXF-9050
> URL: https://issues.apache.org/jira/browse/CXF-9050
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.6.4
>Reporter: Dmitry
>Priority: Minor
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
> But *DefaultApplicationFactory.class* have {*}javax{*}.ws.rs.core.Application 
> import instead of jakarta.
> As a result, an error occurs when 
> org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
> .createServer() method:
> """
> Error creating bean with name 'jaxRsServer' defined in class path resource 
> [org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
> instantiate [org.apache.cxf.endpoint.Server]: *Factory method 'jaxRsServer' 
> threw exception with message: javax/ws/rs/core/Application*
> """
> _Thank Apache team for your work and support!_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9050) Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import

2024-08-30 Thread Dmitry (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9050?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry updated CXF-9050:

Priority: Major  (was: Minor)

> Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import
> 
>
> Key: CXF-9050
> URL: https://issues.apache.org/jira/browse/CXF-9050
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.6.4
>Reporter: Dmitry
>Priority: Major
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
> But *DefaultApplicationFactory.class* have {*}javax{*}.ws.rs.core.Application 
> import instead of jakarta.
> As a result, an error occurs when 
> org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
> .createServer() method:
> """
> Error creating bean with name 'jaxRsServer' defined in class path resource 
> [org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
> instantiate [org.apache.cxf.endpoint.Server]: *Factory method 'jaxRsServer' 
> threw exception with message: javax/ws/rs/core/Application*
> """
> _Thank Apache team for your work and support!_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (CXF-9050) Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import

2024-08-30 Thread Dmitry (Jira)


 [ 
https://issues.apache.org/jira/browse/CXF-9050?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry updated CXF-9050:

Description: 
cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
But DefaultApplicationFactory.class have javax.ws.rs.core.Application import 
instead of javax.

As a result, an error occurs when 
org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
.createServer() method:

"""

Error creating bean with name 'jaxRsServer' defined in class path resource 
[org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
instantiate [org.apache.cxf.endpoint.Server]: Factory method 'jaxRsServer' 
threw exception with message: javax/ws/rs/core/Application
"""

_Thank Apache team for your work and support!_

  was:
cxf-rt-rs-service-description-swagger imports jakarta.ws.rs.core
But DefaultApplicationFactory.class have javax.ws.rs.core.Application import 
instead of javax.

As a result, an error occurs when 
org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
.createServer() method:

"""

Error creating bean with name 'jaxRsServer' defined in class path resource 
[org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
instantiate [org.apache.cxf.endpoint.Server]: Factory method 'jaxRsServer' 
threw exception with message: javax/ws/rs/core/Application
"""

_Thank Apache team for your work and support!_


> Apache CXF JAX RS Service Description Swagger » 3.6.4 | Wrong import
> ----
>
> Key: CXF-9050
> URL: https://issues.apache.org/jira/browse/CXF-9050
> Project: CXF
>  Issue Type: Bug
>  Components: JAX-RS
>Affects Versions: 3.6.4
>Reporter: Dmitry
>Priority: Minor
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> cxf-rt-rs-service-description-swagger depends on jakarta.ws.rs.core
> But DefaultApplicationFactory.class have javax.ws.rs.core.Application import 
> instead of javax.
> As a result, an error occurs when 
> org.apache.cxf.jaxrs.spring.SpringComponentScanServer.class try to call 
> .createServer() method:
> """
> Error creating bean with name 'jaxRsServer' defined in class path resource 
> [org/apache/cxf/jaxrs/spring/SpringComponentScanServer.class]: Failed to 
> instantiate [org.apache.cxf.endpoint.Server]: Factory method 'jaxRsServer' 
> threw exception with message: javax/ws/rs/core/Application
> """
> _Thank Apache team for your work and support!_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


  1   2   3   4   5   6   7   8   9   10   >