[ https://issues.apache.org/jira/browse/AXIS2-6049?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andreas Veithen resolved AXIS2-6049. ------------------------------------ Fix Version/s: 1.8.3 Assignee: Andreas Veithen Resolution: Fixed > Generated Exceptions differ each generation > ------------------------------------------- > > Key: AXIS2-6049 > URL: https://issues.apache.org/jira/browse/AXIS2-6049 > Project: Axis2 > Issue Type: Improvement > Components: codegen > Affects Versions: 1.8.0 > Reporter: Stefan May > Assignee: Andreas Veithen > Priority: Minor > Fix For: 1.8.3 > > > *Description:* > The Java files which are generated by the AntCodegenTask for Exceptions > differ each generation in the serialVersionUID. > This is especially bothering if the gradle cache should be used, wich > requires a fixed input. Also, the objects may not be deserialized again if > the SerialVersionUID changes each time. > *Steps to reproduce:* > Create a WSDL with a wsdl:fault element, e.g: > {code:java} > <?xml version="1.0" encoding="UTF-8"?> > <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" > xmlns:tns="http://www.example.org/" > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" > xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ExampleModule" > targetNamespace="http://www.example.org/"> > <wsdl:types> > <xsd:schema targetNamespace="http://www.example.org/"> > <xsd:element name="getSolutionById"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="in" type="xsd:string"/> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > <xsd:element name="getSolutionByIdResponse"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="out" type="xsd:string"/> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > <xsd:element name="getSolutionByIdFault"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="getSolutionByIdFault" > type="xsd:string"> > </xsd:element> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > </xsd:schema> > </wsdl:types> > <wsdl:message name="getSolutionByIdRequest"> > <wsdl:part element="tns:getSolutionById" name="parameters"/> > </wsdl:message> > <wsdl:message name="getSolutionByIdResponse"> > <wsdl:part element="tns:getSolutionByIdResponse" name="parameters"/> > </wsdl:message> > <wsdl:message name="getSolutionByIdFault"> > <wsdl:part name="parameters" > element="tns:getSolutionByIdFault"></wsdl:part> > </wsdl:message> > <wsdl:portType name="ExampleModule"> > <wsdl:operation name="getSolutionById"> > <wsdl:input message="tns:getSolutionByIdRequest"/> > <wsdl:output message="tns:getSolutionByIdResponse"/> > <wsdl:fault name="fault" > message="tns:getSolutionByIdFault"></wsdl:fault> > </wsdl:operation> > </wsdl:portType> > <wsdl:binding name="ExampleModuleSOAP" type="tns:ExampleModule"> > <soap:binding style="document" > transport="http://schemas.xmlsoap.org/soap/http"/> > <wsdl:operation name="getSolutionById"> > <soap:operation > soapAction="http://www.example.org/ExampleModule/getSolutionById"/> > <wsdl:input> > <soap:body use="literal"/> > </wsdl:input> > <wsdl:output> > <soap:body use="literal"/> > </wsdl:output> > <wsdl:fault name="fault"> > <soap:fault use="literal" name="fault" /> > </wsdl:fault> > </wsdl:operation> > </wsdl:binding> > <wsdl:service name="ExampleModule"> > <wsdl:port binding="tns:ExampleModuleSOAP" name="ExampleModuleSOAP"> > <soap:address location="http://www.example.org/"/> > </wsdl:port> > </wsdl:service> > </wsdl:definitions>{code} > Generate it again, the serialVersionUID changes > *More info* > I've checked and found the corresponding issue in the file > [https://github.com/apache/axis-axis2-java-core/blob/master/modules/codegen/src/org/apache/axis2/wsdl/codegen/emitter/AxisServiceBasedMultiLanguageEmitter.java|https://github.com/wso2/wso2-axis2/blob/28a2220ba3a5547315347ecb97b512059070d15d/modules/codegen/src/org/apache/axis2/wsdl/codegen/emitter/AxisServiceBasedMultiLanguageEmitter.java] > in line 1055, where the {{System.currentTimeMillis()}} is used for the > serialVersionUID. > A hash based on the className and the parameters would probably be better. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org For additional commands, e-mail: java-dev-h...@axis.apache.org