[ https://issues.apache.org/jira/browse/CXF-6759?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15117506#comment-15117506 ]
Sergey Beryozkin commented on CXF-6759: --------------------------------------- Hi Neal Indeed, if no method ids are used and we have multiple same path methods under a given resource then I see it will generate duplicate methods as it has no other info to make the names unique. I agree the counter is the way to go in such cases. See, if we check the buffer then we will have to calculate the index right which can be tricky as there might be some parameters with the same name, etc. How about: - line 510, this is where a new resource class generation starts, just before writeMethods() is called, create Map of String to Integer and pass it to writeMethods -> writeResourceMethod and simply check and increase the counter there if the same name method already exists. Do you agree ? Sergey > WADL2JAVA Tools Generated Source has Duplicate Method Name > ---------------------------------------------------------- > > Key: CXF-6759 > URL: https://issues.apache.org/jira/browse/CXF-6759 > Project: CXF > Issue Type: Bug > Components: JAX-RS, Tooling > Affects Versions: 3.0.7, 3.1.4 > Environment: Windows > Reporter: Neal Hu > Fix For: 3.1.5, 3.0.8, 3.2.0 > > > Generate source using below wadl file contains duplicate method name: > command: wadl2java.bat -p cxf -d . -impl hello.wadl > <application xmlns="http://wadl.dev.java.net/2009/02" > xmlns:xs="http://www.w3.org/2001/XMLSchema"> > <grammars/> > <resources base="http://localhost:9088/Pojo/hello/"> > <resource path="/BasicResource"> > <resource path="/echo"> > <method name="GET"> > <response> > <representation mediaType="application/json"> > <param name="result" style="plain" type="xs:string"/> > </representation> > </response> > </method> > <method name="GET"> > <response> > <representation mediaType="text/plain"> > <param name="result" style="plain" type="xs:string"/> > </representation> > </response> > </method> > </resource> > </resource> > </resources> > </application> > /** > * Created by Apache CXF WadlToJava code generator > **/ > package cxf; > import javax.ws.rs.GET; > import javax.ws.rs.Path; > import javax.ws.rs.Produces; > @Path("/BasicResource") > public class BasicResourceResource { > @GET > @Produces("application/json") > @Path("/echo") > public String getEcho() { > //TODO: implement > return null; > } > @GET > @Produces("text/plain") > @Path("/echo") > public String getEcho() { > //TODO: implement > return null; > } > } -- This message was sent by Atlassian JIRA (v6.3.4#6332)