You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Miroslav Chladny (Jira)" <ji...@apache.org> on 2025/07/22 05:46:00 UTC

[jira] [Updated] (CXF-9153) The class org.apache.cxf.transport.servlet.servicelist.UnformattedServiceListWriter does not work for RESTfull destinations

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

Miroslav Chladny updated CXF-9153:
----------------------------------
    Description: 
The class  org.apache.cxf.transport.servlet.servicelist.UnformattedServiceListWriter does not work for RESTfull destinations and needs substantial revising. I report the issue for version 4.0.5, however the source-code on github has not changed, therefore probably multiple versions (including the newest one) are affected. I have analyzed the source-code, not only the behavior.

The prupose of this class is to output the list of available endpoints in raw form, if "formatted=false" is requested. However, there are multiple issues in the method {_}writeUnformattedRESTfulEndpoints{_}:
 * There is a typo in the name of properties (3 times): _descrition_ instead of description, thus the values for properties are not read at all
 * There are 3 properties: {_}wadlAvailable{_}, {_}swaggerAvailable{_}, and _openApiAvailable_ to test. If none of them is active a "raw output" shall follow. However, the method incorrectly checks for _!wadlAvailable && !swaggerAvailable_ only instead of _!wadlAvailable && !swaggerAvailable &&!openApiAvailable_
 * If none of the properties is set and "raw output" activates, the method incorrectly outputs the first destination only and returns. It shall continue instead and report all destinations ({_}continue{_} instead of {_}return{_})

Moreover, in the method _getContentType_ the content type _text/html_ is spacified. Although partially disputable, there is no reason for HTML-content, as the output is unformatted. If viewed by a human, under _text/html_ the ouput is distored (although previously raw-formatted by new-line symbols)

  was:
The class  org.apache.cxf.transport.servlet.servicelist.UnformattedServiceListWriter does not work for RESTfull destinations and needs substantial revising. I report the issue for version 4.0.5, however the source-code on github has not changed, therefore probably multiple versions (including the newest one) are affected. I have analyzed the source-code, not only the behavior.

The prupose of this class is to output the list of available endpoints in raw form, if "formatted=false" is requested. However, there are multiple issues in the method {_}writeUnformattedRESTfulEndpoints{_}:
 * There is a typo in the name of properties (3 times): _descrition_ instead of description, thus the values for properties are not read at all
 * There are 3 properties: {_}wadlAvailable{_}, {_}swaggerAvailable{_}, and _openApiAvailable_ to test. If none of them is active a "raw output" shall follow. However, the method incorrectly checks for _!wadlAvailable && !swaggerAvailable_ only instead of _!wadlAvailable && !swaggerAvailable &&!openApiAvailable_
 * If __ none of the properties is set and "raw output" activates, the method incorrectly outputs the first destination only and returns. It shall continue instead and report all destinations ({_}continue{_} instead of {_}return{_})

Moreover, in the method _getContentType_ the content type _text/html_ is spacified. Although partially disputable, there is no reason for HTML-content, as the output is unformatted. If viewed by a human, under _text/html_ the ouput is distored (although previously raw-formatted by new-line symbols)


> The class org.apache.cxf.transport.servlet.servicelist.UnformattedServiceListWriter does not work for RESTfull destinations
> ---------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-9153
>                 URL: https://issues.apache.org/jira/browse/CXF-9153
>             Project: CXF
>          Issue Type: Bug
>          Components: Transports
>    Affects Versions: 4.0.5
>            Reporter: Miroslav Chladny
>            Priority: Major
>
> The class  org.apache.cxf.transport.servlet.servicelist.UnformattedServiceListWriter does not work for RESTfull destinations and needs substantial revising. I report the issue for version 4.0.5, however the source-code on github has not changed, therefore probably multiple versions (including the newest one) are affected. I have analyzed the source-code, not only the behavior.
> The prupose of this class is to output the list of available endpoints in raw form, if "formatted=false" is requested. However, there are multiple issues in the method {_}writeUnformattedRESTfulEndpoints{_}:
>  * There is a typo in the name of properties (3 times): _descrition_ instead of description, thus the values for properties are not read at all
>  * There are 3 properties: {_}wadlAvailable{_}, {_}swaggerAvailable{_}, and _openApiAvailable_ to test. If none of them is active a "raw output" shall follow. However, the method incorrectly checks for _!wadlAvailable && !swaggerAvailable_ only instead of _!wadlAvailable && !swaggerAvailable &&!openApiAvailable_
>  * If none of the properties is set and "raw output" activates, the method incorrectly outputs the first destination only and returns. It shall continue instead and report all destinations ({_}continue{_} instead of {_}return{_})
> Moreover, in the method _getContentType_ the content type _text/html_ is spacified. Although partially disputable, there is no reason for HTML-content, as the output is unformatted. If viewed by a human, under _text/html_ the ouput is distored (although previously raw-formatted by new-line symbols)



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