Joel Pearson created CXF-5665:
---------------------------------
Summary: Java First WS-Policy duplicate PolicyReferences when
using annotations and no separate Java Interface
Key: CXF-5665
URL: https://issues.apache.org/jira/browse/CXF-5665
Project: CXF
Issue Type: Bug
Components: JAX-WS Runtime
Affects Versions: 2.7.10, 3.0.0-milestone2
Reporter: Joel Pearson
Attachments: duplicate-policyreference-test.patch
In CXF 2.7.10 when using Java First WS-Policy Annotations such as:
{code:java}
@Policies({
@Policy(uri = "annotationpolicies/TestOperationPolicy.xml"),
@Policy(uri = "annotationpolicies/TestOperationInputPolicy.xml",
placement = Policy.Placement.BINDING_OPERATION_INPUT),
@Policy(uri = "annotationpolicies/TestOperationOutputPolicy.xml",
placement = Policy.Placement.BINDING_OPERATION_OUTPUT),
@Policy(uri = "annotationpolicies/TestOperationPTPolicy.xml",
placement = Policy.Placement.PORT_TYPE_OPERATION),
@Policy(uri = "annotationpolicies/TestOperationPTInputPolicy.xml",
placement =
Policy.Placement.PORT_TYPE_OPERATION_INPUT),
@Policy(uri = "annotationpolicies/TestOperationPTOutputPolicy.xml",
placement =
Policy.Placement.PORT_TYPE_OPERATION_OUTPUT)
})
{code}
The resulting WSDL ends up generating multiple PolicyReference elements when
there is no separate Java Interface for example:
{code:xml}
<wsdl:operation name="echoInt">
<soap:operation soapAction="" style="document"/>
<wsp:PolicyReference URI="#echoIntBindingOpPolicy"/>
<wsp:PolicyReference URI="#echoIntBindingOpPolicy"/>
<wsdl:input name="echoInt">
<soap:body use="literal"/>
<wsp:PolicyReference
URI="#echoIntBindingOpInputPolicy"/>
<wsp:PolicyReference
URI="#echoIntBindingOpInputPolicy"/>
</wsdl:input>
<wsdl:output name="echoIntResponse">
<soap:body use="literal"/>
<wsp:PolicyReference
URI="#echoIntBindingOpOutputPolicy"/>
<wsp:PolicyReference
URI="#echoIntBindingOpOutputPolicy"/>
</wsdl:output>
</wsdl:operation>
{code}
This problem can be reproduced by modifying the
_rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/ws/PolicyAnnotationTest.java_
test so that it counts the number PolicyReference's
This problem affects both the 2.7.x series and master/trunk at the present
time, 2.6.x does not have this problem.
A patch to the above mention test is attached.
--
This message was sent by Atlassian JIRA
(v6.2#6252)