2013-07-31 1 views
1

나는 cvf-codegen maven plugin을 사용하고있다. mvn을 처음 설치했을 때, 파일 세트를 생성했다.이 파일들은 target/generated-sources/cxf 폴더에 저장되었고, 생성 된 모든 파일은 컴파일 된 결과 jar에 압축되어있다. 메이븐.생성 된 파일을 수정하고 cxf-codegen 플러그인을 사용하여 만든 다음 컴파일 할 수 있습니까?

이제는 어떤 이유로 응답이 생성되는 동안 namespace 속성이 package--info.java에서 반입되지 않습니다. 그래서 내 서버는

javax.xml.bind.UnmarshalException: 
unexpected element (uri:"", local:"com.collabnet.teamforge.ia.types.GetConfigurationParametersResponse"). 
Expected elements are 
\lt{http://www.collab.net/teamforge/integratedapp}CreateProjectConfigurationRequest\gt, 
\lt{http://www.collab.net/teamforge/integratedapp}GetConfigurationParametersRequest\gt, 
\lt{http://www.collab.net/teamforge/integratedapp}GetConfigurationParametersResponse\gt, 
\lt{http://www.collab.net/teamforge/integratedapp}GetPageComponentParametersRequest>

그래서이있다,

@XmlRootElement (이름 = "GetConfigurationParametersResponse"로 생성 된 파일 (GetConfigurationParametersResponse.java)의 네임 스페이스 속성을 설정 할 계획 무엇을 말하는 오류를 놀아나는, namespace = "http : // ...")

. 현재 나는 변경을 수행하고 설치를했으나 아무 것도 일어나지 않을 것입니다. 즉, 생성 된 파일의 변경 사항은 Maven 설치시 무시됩니다. 컴파일되지 않습니다.

그래서 제 질문은

어떻게 반영하려면 설치 받는다는 동안 컴파일 된 얻을 내가 생성 된 파일에서 만든이 변경 사항을 확인하는 것입니다?

+0

은 Maven 설치시 생성 된 파일을 덮어 쓰는 것에 대한 변경 사항입니까? –

+0

아니요. 방금 maven을 설치하고 항아리를 가져 왔습니다. 변경 사항이 반영되었는지 확인하려면 온라인 Java 디 컴파일러 http://www.showmycode.com/을 사용했습니다. 거기에 오래된 코드 만 있다는 것을 알았습니다. –

+0

뿐만 아니라, 나는 이것을 시험했다. 서버가 다시 동일한 오류를 내 렸습니다. 즉, 변경 사항이 반영되지 않았습니다. –

답변

2

"-xjc-npa"플래그를 wsdl2java에 추가하면 모든 네임 스페이스 속성을 채우고 package-info.java 항목을 생성하지 않아야합니다. 그것이 정말로 문제인 경우 문제를 해결할 수 있습니다. 즉, 여전히 namespace = ""속성을 생성하면 wsdl의 스키마가 잘못되어 elementFormDefault = "qualified"속성이없는 것입니다.

+0

나는 그것을 -xjc-npa으로 제공해야합니까? pom –

+0

예. 위와 같이 네임 스페이스가 생성 된 파일의 특성으로 생성되었습니다. 감사 . +1 –

+0

하지만 아직은 URI가 비어 있습니다. 나는이 영역에 새로운 사람이다. 전문 지식을 사용할 수 있습니까? http://stackoverflow.com/questions/17961790/restlet-seems-to-ignore-pakage-info-java?lq=1&hl=ko –