- - PR -
SOAPFault にメッセージをセットするには
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-09-01 17:43
はじめまして。現在AXISを利用してメッセージのやりとりを行っています。
SoupFaultのdetail部に独自の値をセットしようと試みているのですが、うまくいきません。 以下サーバー側のソースです -------------------------- public class HelloAxis { public void sayHello() { Date date; String dateTime; Detail detail = null; try { System.out.println("sayHello called"); detail = SOAPFactory.newInstance().createDetail(); detail.addChildElement("errCd").addTextNode("001"); detail.addChildElement("errMsg").addTextNode("error message"); } catch (SOAPException e) { e.printStackTrace(); } throw new SOAPFaultException(new QName( "http://localhost:8080/","sayHello" ), "helloSOAPFault method failed","http://localhost:8080/axis/HelloAxis.jws",detail ); } } ----- client側のソースです public class HelloAxisClient { public static void main(String[] args) throws Exception{ Response resp; try{ String endpoint = "http://localhost:8080/axis/HelloAxis.jws"; Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress( new java.net.URL(endpoint) ); call.setOperationName(new QName("http://localhost:8080/", "sayHello")); String ret = (String) call.invoke( new Object[0] ); }catch( Exception exception ){ exception.printStackTrace(); } } このとき結果はfaultCodeとfaultStringしか取得できていません。 faultDetailにセットした >detail.addChildElement("errCd").addTextNode("001"); >detail.addChildElement("errMsg").addTextNode("error message"); を出すにはどうすればよろしいでしょうか。 よろしくお願いします |
|
投稿日時: 2004-09-03 16:18
クライアント側でExceptionをcatchしているところを、SOAPFaultExceptionをcatchする
ように変えたら取得できませんか? |
1