Hi All, I have written an axis 1.4 client for a web service and it was working properly, returning a response earlier. Recently the web service url is protected with windows authentication. A pop up is appearing for windows domain, username and password if I type the url in internet explorer.
I have updated the client to have NTLM authentication. I have modified the client-config.wsdd file in "org.apache.axis.client" package for this to use "CommonsHttpSender" instead of "HttpSender" and in the client I am setting the "domain\\username" and "password" for call object. The web service itself have an authentication for which I am including the header part containing the authentication information. The java code for client is as follows: String Username = "XXX"; String Pswd = "XXXXX"; String Authentication = "ARSystem"; String Locale = "en_US"; String timeZone = "GMT"; Service service = new Service(); Call call = (Call)service.createCall(); URL url = new URL("http://nxprd01/arsys/services/ARService?server=devrmd04.unix.gsm1900.org&webService=UserCARE"); call.setUsername("domain\\username"); call.setPassword("Password"); call.setTargetEndpointAddress(url); try { SOAPHeaderElement Helement = new SOAPHeaderElement("http://www.w3.org/2001/XMLSchema","AuthenticationInfo"); SOAPElement element; element = Helement.addChildElement("userName"); element.addTextNode(Username); element = Helement.addChildElement("password"); element.addTextNode(Pswd); element = Helement.addChildElement("authentication"); element.addTextNode(Authentication); element = Helement.addChildElement("locale"); element.addTextNode(Locale); element = Helement.addChildElement("timeZone"); element.addTextNode(timeZone); call.addHeader(Helement); } catch(Exception e) { System.out.println("Exception during authentication....." + e.getMessage()); } //call.setEncodingStyle("UTF-8"); call.setOperationName(new javax.xml.namespace.QName("urn:UserCARE", "OpCreate")); String acct_Creator = null; String application_License = null; String computed_Grp_List ="8051;"; String creator = "ssurane1"; String default_Notify_Mechanism = Default_Notify_MechanismType._Email; String department ="EIT"; String email_Address= "[EMAIL PROTECTED]"; String employeeID= "P1234455"; String first_Name ="Sreekanth"; String flashboard_License_Type = Flashboard_License_TypeType._None; String full_Name = "Sreekanth Suraneni"; String full_Text_License_Type = Full_Text_License_TypeType._None; String group_List = "8051;"; String last_Name = "Suraneni"; String license_Type = License_TypeType._value2; String login_Name = "ssurane1"; String manager = "Manager Me"; String office = "Tampa Data Center"; String office_Phone = "615-718-7129"; String password = "xxxxx"; String PCS_Phone = "615-718-7129"; String primary_Group = "8051"; String samson_ID = "sam001"; String status = StatusType._Active; String TCS_Name = "xxxxx"; String title = "xxxxxx"; String training_ID = "11233"; System.out.println("Before Invoke......................"); // For OpCreate call.addParameter("Acct_Creator", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Application_License", XMLType.XSD_STRING, ParameterMode.IN); // call.addParameter("Computed_Grp_List", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Creator", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Default_Notify_Mechanism", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Department", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Email_Address", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("employeeID", XMLType.XSD_STRING, ParameterMode.IN); // call.addParameter("First_Name", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Flashboard_License_Type", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Full_Name", XMLType.XSD_STRING, ParameterMode.IN); // call.addParameter("Full_Text_License_Type", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Group_List", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Last_Name", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("License_Type", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Login_Name", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Manager", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Office", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Office_Phone", XMLType.XSD_STRING, ParameterMode.IN); // call.addParameter("Password", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("PCS_Phone", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Primary_Group", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Samson_ID", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Status", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("TCS_Name", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Title", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("Training_ID", XMLType.XSD_STRING, ParameterMode.IN); call.setReturnType(XMLType.XSD_STRING); System.out.println("Before invoke*****"); Object _resp = call.invoke(new Object[] { acct_Creator, application_License, computed_Grp_List, creator, default_Notify_Mechanism, department, email_Address, employeeID, first_Name, flashboard_License_Type, full_Name,full_Text_License_Type, group_List, last_Name, license_Type, login_Name, manager, office, office_Phone, password, PCS_Phone, primary_Group, samson_ID, status, TCS_Name, title, training_ID }); System.out.println(_resp); I am getting a premature end of file exception in the output as follows. - Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled. Before Invoke...................... Before invoke***** - ntlm authentication scheme selected AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: org.xml.sax.SAXParseException: Premature end of file. faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}hostname:NXPRDWSRIT01 org.xml.sax.SAXParseException: Premature end of file. at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129) at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087) at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source) at org.apache.crimson.parser.Parser2.content(Unknown Source) at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source) at org.apache.crimson.parser.Parser2.content(Unknown Source) at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source) at org.apache.crimson.parser.Parser2.parseInternal(Unknown Source) at org.apache.crimson.parser.Parser2.parse(Unknown Source) at org.apache.crimson.parser.XMLReaderImpl.parse(Unknown Source) at javax.xml.parsers.SAXParser.parse(Unknown Source) at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) at org.apache.axis.Message.getSOAPEnvelope(Message.java:435) at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) at org.apache.axis.client.Call.invokeEngine(Call.java:2784) at org.apache.axis.client.Call.invoke(Call.java:2767) at org.apache.axis.client.Call.invoke(Call.java:2443) at org.apache.axis.client.Call.invoke(Call.java:2366) at org.apache.axis.client.Call.invoke(Call.java:1812) at UserCARE.client.NewTestClient.main(NewTestClient.java:169) I have recorded the SOAP request using the TCPMON tool and here is the soap request which is going to the server (pasting the request exactly as it appears in tcpmon tool): POST /arsys/services/ARService?server=devrmd04.unix.gsm1900.org&webService=UserCARE HTTP/1.1 Content-Type: text/xml; charset=utf-8 SOAPAction: "" User-Agent: Axis/1.4 Host: 127.0.0.1:9876 Transfer-Encoding: chunked 8d8 <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <xsd:AuthenticationInfo soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next" soapenv:mustUnderstand="0"> <xsd:userName>XXX</xsd:userName> <xsd:password>XXXXXX</xsd:password> <xsd:authentication>ARSystem</xsd:authentication> <xsd:locale>en_US</xsd:locale> <xsd:timeZone>GMT</xsd:timeZone> </xsd:AuthenticationInfo> </soapenv:Header> <soapenv:Body> <ns1:OpCreate soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="urn:UserCARE"> <Acct_Creator xsi:type="xsd:string" xsi:nil="true"/> <Application_License xsi:type="xsd:string" xsi:nil="true"/> <Computed_Grp_List xsi:type="xsd:string">8051;</Computed_Grp_List> <Creator xsi:type="xsd:string">ssurane1</Creator> <Default_Notify_Mechanism xsi:type="xsd:string">Email</Default_Notify_Mechanism> <Department xsi:type="xsd:string">EIT</Department> <Email_Address xsi:type="xsd:string">[EMAIL PROTECTED]</Email_Address> <employeeID xsi:type="xsd:string">P1234455</employeeID> <First_Name xsi:type="xsd:string">Sreekanth</First_Name> <Flashboard_License_Type xsi:type="xsd:string">None</Flashboard_License_Type> <Full_Name xsi:type="xsd:string">Sreekanth Suraneni</Full_Name> <Full_Text_License_Type xsi:type="xsd:string">None</Full_Text_License_Type> <Group_List xsi:type="xsd:string">8051;</Group_List> <Last_Name xsi:type="xsd:string">Suraneni</Last_Name> <License_Type xsi:type="xsd:string">Fixed</License_Type> <Login_Name xsi:type="xsd:string">ssurane1</Login_Name> <Manager xsi:type="xsd:string">Manager Me</Manager> <Office xsi:type="xsd:string">Tampa Data Center</Office> <Office_Phone xsi:type="xsd:string">615-718-7129</Office_Phone> <Password xsi:type="xsd:string">xxxxx</Password> <PCS_Phone xsi:type="xsd:string">615-718-7129</PCS_Phone> <Primary_Group xsi:type="xsd:string">8051</Primary_Group> <Samson_ID xsi:type="xsd:string">sam001</Samson_ID> <Status xsi:type="xsd:string">Active</Status> <TCS_Name xsi:type="xsd:string">xxxxx</TCS_Name> <Title xsi:type="xsd:string">xxxxxx</Title> <Training_ID xsi:type="xsd:string">11233</Training_ID> </ns1:OpCreate> </soapenv:Body> </soapenv:Envelope>0 I request you to please help me in resolving this issue. Thanks, Suraneni -- View this message in context: http://www.nabble.com/Axis-1.4-web-service-client-with-NTLM-authentication%2C-getting-%22premature-end-of-file%22-exception-tp16270117p16270117.html Sent from the Axis - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]