2011-11-14 3 views
0

이것은 웹 서비스를 사용하려고 할 때 나타나는 예외입니다.Axis2 Rampart 클라이언트 "Security Namespace null"예외

java.lang.RuntimeException: Undefined 'Security policy namespace cannot be null.' resource property 
at org.apache.rampart.RampartException.getMessage(RampartException.java:81) 
at org.apache.rampart.RampartException.(RampartException.java:41) 
at org.apache.rampart.RampartException.(RampartException.java:57) 
at org.apache.rampart.RampartMessageData.setWSSecurityVersions(RampartMessageData.java:373) 
at org.apache.rampart.RampartMessageData.(RampartMessageData.java:261) 
at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:61) 
at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:65) 
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340) 
at org.apache.axis2.engine.Phase.invoke(Phase.java:313) 
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262) 
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:427) 
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:406) 
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229) 
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165) 
at com.eloqua.secure.api.service.EloquaStub.retrieve(EloquaStub.java:2220) 

이것은 내가 성벽에 매여있는 방식입니다.

ConfigurationContext serviceContext = ConfigurationContextFactory.createConfigurationContextFromFileSystem("/usr/axis2-1.6.0/repository", "/usr/axis2-1.6.0/conf/axis2.xml"); 
EloquaStub serviceStub = new EloquaStub(serviceContext, "<Link to the WSDL>"); 


ServiceClient client = serviceStub._getServiceClient(); 
client.engageModule("rampart"); 
Options options = client.getOptions();    
options.setUserName("<USERNAME>"); 
options.setPassword("**<PASSWORD>**"); 

RetrieveResponse retrieveResp = serviceStub.retrieve(retrieveData); //this where I am trying to consume to webservice. 

axis2.xml 및 저장소에 대한 경로를 확인했습니다. 다음이 설치되었습니다.

rahas-1.6.0.mar 
rampart-1.6.0.mar 

코드는 위의 두 파일을 다른 모듈과 함께 찾을 수 있습니다. 사용 권한이 올바르게 설정되었습니다. "FileNotFound"예외가 표시되지 않기 때문에이 사실을 알 수 있습니다.

환경에 AXIS2_HOME 경로를 설정했습니다.

내 질문은 다음과 같습니다.

  • 예외 메시지는 무엇을 의미합니까?
  • 이 문제를 해결하는 방법은 무엇입니까?

답변

0

이 오류는 클래스 경로가 올바르게 설정되지 않았기 때문에 발생했습니다. 유사한 축 jars가있는 두 개의 폴더가 있습니다. 어떤 이유로 톰캣이 이상한 상태에 빠졌습니다. 클래스 경로에서 두 번째 폴더를 제거하고 자체적으로 해결했습니다.

+0

당신의 솔루션은 효과가 없습니다. 이 예외는 무엇을 의미합니까? – chetan

관련 문제