2012-06-18 2 views
3

I (아래로) 그것이 AxisFault 예외가 발생 예외에 웹 서비스의 주위에 자바 래퍼 코드를 가지고수 없습니다 AxisFault 예외

org.apache.axis2.AxisFault: Policy enforcement failed to authenticate the request. 
    at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:446) 
    at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:371) 
    at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:417) 
    at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229) 
    at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165) 
    at com.tibco.n2.de.services.EntityResolverServiceStub.lookupUser(EntityResolverServiceStub.java:261) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 

하고 코드 보인다 아래로,

같은
try { 
       lookupUserResponse = myIntializedObject.lookupUser("someuser", null, null, true); 
      } catch (InvalidServiceRequestFault e) { 
       // TODO Auto-generated catch block 
       //e.printStackTrace(); 
      } catch (InternalServiceFault e) { 
       // TODO Auto-generated catch block 
       //e.printStackTrace(); 
      } catch (SecurityFault e) { 
       // TODO Auto-generated catch block 
       //e.printStackTrace(); 
      } 
      finally{ 
       if(lookupUserResponse==null) 
        return false; 
      } 

은 또한 예외 전자의 단일 블록으로 모든 catch 블록을 교체했지만, 여전히이

답변

1

내가 AxisFault 오류 재치를 잡을 수 있어요 예외를 캡처 아니에요 시간은 다음

try { 
    ... 
} catch (RemoteException ex) { 
    if(ex instanceof AxisFault){ 
     logger.error("Axis Fault error: " + ((AxisFault)ex).getFaultString()); 
    } 
} 

AxisFaultjava.rmi.RemoteException의 서브 클래스입니다. API docs을 보면 알 수 있습니다. 클래스 계층 구조는 페이지의 왼쪽 상단에 표시됩니다.

문에 java.lang.Exception을 사용할 때 이것이 잡히지 않은 이유는 아마도 관련 코드를 게시 할 수 있었습니까?

관련 문제