Page 1 of 1

Error while working with web service pack

Posted: Wed Apr 29, 2009 3:57 am
by srai
Hi All,

I am using web service pack in DataStage job. I am using web service transformer stage to send request to web portal and store return in a sequential file.

My job design is like this-

Source DRS-->Transformer-->web service transformer stage-->transformer---->sequential file.


But while running job I am getiing following error-
job1..Web_Services_Transformer_27: com.ascentialsoftware.wsclient.ServiceInvocationException: Service invocation exception: <ns1:Fault xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/">
<faultcode xmlns:ns1="http://xml.apache.org/axis/">ns1:HTTP</faultcode>
<faultstring>(401)Unauthorized</faultstring>
<detail>
<string>return code: 401
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Draft//EN">
<HTML>
<HEAD>
<TITLE>Error 401--Unauthorized</TITLE>
<META NAME="GENERATOR" CONTENT="WebLogic Server">
</HEAD>
<BODY bgcolor="white">
<FONT FACE=Helvetica><BR CLEAR=all>
<TABLE border=0 cellspacing=5><TR><TD><BR CLEAR=all>
<FONT FACE="Helvetica" COLOR="black" SIZE="3"><H2>Error 401--Unauthorized</H2>
</FONT></TD></TR>
</TABLE>
<TABLE border=0 width=100% cellpadding=10><TR><TD VALIGN=top WIDTH=100% BGCOLOR=white><FONT FACE="Courier New"><FONT FACE="Helvetica" SIZE="3"><H3>From RFC 2068 <i>Hypertext Transfer Protocol -- HTTP/1.1</i>:</H3>
</FONT><FONT FACE="Helvetica" SIZE="3"><H4>10.4.2 401 Unauthorized</H4>
</FONT><P><FONT FACE="Courier New">The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.46) containing a challenge applicable to the requested resource. The client MAY repeat the request with a suitable Authorization header field (section 14.8). If the request already included Authorization credentials, then the 401 response indicates that authorization has been refused for those credentials. If the 401 response contains the same challenge as the prior response, and the user agent has already attempted authentication at least once, then the user SHOULD be presented the entity that was given in the response, since that entity MAY include relevant diagnostic information. HTTP access authentication is explained in section 11.</FONT></P>
</FONT></TD></TR>
</TABLE>

</BODY>
</HTML>
</string>
</detail>
</ns1:Fault>
at com.ascentialsoftware.wsclient.OperationCall.handleRemoteException(OperationCall.java:369)
at com.ascentialsoftware.wsclient.OperationCall.invoke(OperationCall.java:274)
at com.ascentialsoftware.wsclient.WebService.callServiceInternal(WebService.java:1685)
at com.ascentialsoftware.wsclient.WebService.callService(WebService.java:1591)
at com.ascentialsoftware.wsclient.WebService.callService(WebService.java:1544)
at com.ascentialsoftware.wspack.Transformer.process(Transformer.java:104)
at com.ascentialsoftware.jds.StageFactory.runStage(StageFactory.java:544)
at com.ascentialsoftware.jds.StageFactory.runTransformer(StageFactory.java:361)

Posted: Wed Apr 29, 2009 8:18 am
by eostic
It looks like it may be an authentication issue. Be sure you can fully execute this service using a testing tool outside of DS. It may need HTTPS credentials --- it may also need detailed header info. Once you know exactly how it needs to be invoked using a WS testing tool, then it will be simpler to craft a solution in DS. SOAPScope from Progress/Mindreef is one good tool, Strikeiron has one, as does XMLSpy, IBM RDA (and other rational tools) and MANY others, free and not free, that you should be able to find on the web.

Ernie

Posted: Mon Oct 26, 2009 9:19 am
by kripakarprasad
Are you using secure HTTP.. In that case make sure you install the certificates and also setup the stage to authenticate the same.

It should work fine.