You need to sign in to do that
Don't have an account?
Application cannot login through SOAP interface
Hi Experts,
My application cannot login to the Saleseforce testing environment.
I was using the SOAP URL: https://test.salesforce.com/services/Soap/c/12.0
I have already append the security token at the end of the username. Do you know what's wrong with my account?
Here is a portion of the error message return from my application log:
[#|2010-04-13T14:31:40.788+0800|SEVERE|sun-appserver-pe9.0|cs|_ThreadID=25;_ThreadName=p: thread-pool-1; w: 7;_RequestID=80219e8d-85db-4eec-94a4-732b944df232;|ERR_CS_000: Undefined error!
com.fimat.clientservices.CSException: ERR_CS_000: Undefined error!
at com.fimat.clientservices.app.mapper.ClientAccountMapper.<init>(ClientAccountMapper.java:152)
at com.fimat.clientservices.scheduler.app.SalesforceAcctSyncSchedulerHelper.run(SalesforceAcctSyncSchedulerHelper.java:204)
at com.fimat.clientservices.scheduler.app.processor.SchedulerProcessor.runScheduler(SchedulerProcessor.java:46)
at com.fimat.clientservices.scheduler.app.manager.SchedulerManager.runScheduler(SchedulerManager.java:27)
at com.fimat.clientservices.scheduler.app.ejb.session.CSSchedulerServiceBean.runScheduler(CSSchedulerServiceBean.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1050)
at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:165)
at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2766)
at com.sun.ejb.containers.BaseContainer.callEJBTimeout(BaseContainer.java:2698)
at com.sun.ejb.containers.EJBTimerService.deliverTimeout(EJBTimerService.java:1387)
at com.sun.ejb.containers.EJBTimerService.access$100(EJBTimerService.java:86)
at com.sun.ejb.containers.EJBTimerService$TaskExpiredWork.run(EJBTimerService.java:1938)
at com.sun.ejb.containers.EJBTimerService$TaskExpiredWork.service(EJBTimerService.java:1934)
at com.sun.ejb.containers.util.WorkAdapter.doWork(WorkAdapter.java:62)
at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:479)
Caused by: com.fimat.clientservices.CSException: ERR_CS_000: Undefined error!
at com.fimat.clientservices.app.gateway.SalesforceProxy.login(SalesforceProxy.java:97)
at com.fimat.clientservices.app.mapper.ClientAccountMapper.<init>(ClientAccountMapper.java:139)
... 18 more
Caused by: INVALID_LOGIN: Invalid username, password, security token; or user locked out.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at java.lang.Class.newInstance0(Class.java:350)
at java.lang.Class.newInstance(Class.java:303)
at org.apache.axis.encoding.ser.BeanDeserializer.<init>(BeanDeserializer.java:104)
at org.apache.axis.encoding.ser.BeanDeserializer.<init>(BeanDeserializer.java:90)
at com.sforce.soap.enterprise.fault.LoginFault.getDeserializer(LoginFault.java:83)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.axis.encoding.ser.BaseDeserializerFactory.getSpecialized(BaseDeserializerFactory.java:154)
at org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:84)
at org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:464)
at org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:547)
at org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157)
at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:533)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:330)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1693)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
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.transport.http.HTTPSender.readFromSocket(HTTPSender.java:796)
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:144)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
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 com.sforce.soap.enterprise.SoapBindingStub.login(SoapBindingStub.java:3052)
at com.fimat.clientservices.app.gateway.SalesforceProxy.login(SalesforceProxy.java:75)
... 19 more
Thanks in advance, Raven
You have to append the security token to password not username
I have tried with or without the security token at the end of the password already. All are failed with the same result.
If I manually login to the sandbox website (https://test.salesforce.com/), I am able to pass through with my security token appending at the end of my username.
Are you using right server URL? server URL for sandbox is different and you need to mention in your application
As I mentioned earlier, I'm using the SOAP URL as https://test.salesforce.com/services/Soap/c/12.0, which is different from the one for my browser. And I have been using the same SOAP URL for 2 years already. Would there be a chance that the SOAP URL has been changed or my testing user account has been locked for just the SOAP part?
Hmm.. Ideally it should not be. Try adding your IP address and test...
Tried to use ip stead (https://204.14.234.45/services/Soap/c/12.0) but no luck replied.:smileysad:
not like this... Add your IP address to sf account. setup->Security controls->network access..
If you or your org has downloaded any packages recently then your WSDL would have changed. Try with your new WSDL as i also faced a similar problem logging in via soap and with new WSDL i was able to login successfully through my webservice.
Thanks