Login failed--LwsnQuery node thru IPD.

 5 Replies
 2 Subscribed to this topic
 60 Subscribed to this forum
Veteran Member
Posts: 55
Veteran Member

    Getting this error when using the Lawson Query Node under IPD. (LwsnQuery).    com.lawson.security.authen.httpclient.LawsonHttpClientException: Login Failed

    I have tested with EJB connector and the WEB connector Under Rich Client.  

    I am not sure where to look anymore,  I checked the Websphere settings back to the needed params in Rich Client per the documentation.  

    Any ideas/Help would sure be appreciated.



      Jul 11, 2019 9:16:59 AM CDT
      Plug-in Vendor: Infor
      Plug-in Name: Infor Process Designer
      Plug-in ID: com.lawson.bpm.designer
      Product Version: 10.0.3.v201905091503

      Exception detected in Class: com.lawson.bpm.designer.wizards.InforLawsonProcessQueryBuilderPage
      Error message: Error in Loading ProductLines

      Exception detail:
            com.lawson.security.authen.httpclient.LawsonHttpClientException: Login Failed
           at com.lawson.security.authen.httpclient.LawsonHttpClient.isSSOServer(LawsonHttpClient.java:858)
            at com.lawson.security.authen.httpclient.LawsonHttpClient.login(LawsonHttpClient.java:740)
          at com.lawson.security.authen.httpclient.LawsonHttpClient.login(LawsonHttpClient.java:153)
            at com.lawson.bpm.netutils.ConcretePureJavaWebClient.login(ConcretePureJavaWebClient.java:39)
            at com.lawson.bpm.coreutils.CGIInvoker.invoke(CGIInvoker.java:119)
        at com.lawson.bpm.coreutils.CGIInvoker.invoke(CGIInvoker.java:93)
      at com.lawson.bpm.coreutils.CGIInvoker.invoke(CGIInvoker.java:85)
      at com.lawson.bpm.database.dme.DmeQuery.doQuery(DmeQuery.java:152)
       at com.lawson.bpm.designer.wizards.InforLawsonProcessQueryBuilderPage.loadProductLineTables(Unknown Source)
         at com.lawson.bpm.designer.wizards.InforLawsonProcessQueryBuilderPage.createPageContent(Unknown Source)
            at com.lawson.bpm.designer.wizards.InforLawsonProcessQueryBuilderPage.createControl(Unknown Source)
         at org.eclipse.jface.wizard.Wizard.createPageControls(Wizard.java:174)
      at org.eclipse.jface.wizard.WizardDialog.createPageControls(WizardDialog.java:736)
       at org.eclipse.jface.wizard.WizardDialog.createContents(WizardDialog.java:608)
      at org.eclipse.jface.window.Window.create(Window.java:431)
      at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1089)
     at org.eclipse.jface.window.Window.open(Window.java:790)
     at com.lawson.bpm.designer.editor.properties.panels.IOSAPIBuilderPanel.handleCreateButton(Unknown Source)
                 at com.lawson.bpm.designer.editor.properties.panels.GetOrCreatePanel$1.widgetSelected(Unknown Source)
              at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
         at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
       at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4169)

        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3758)
        at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1053)
         at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
     at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:942)
              at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
              at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:588)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
         at com.lawson.bpm.designer.Application.start(Unknown Source)
      at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
            at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
              at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
       at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
     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)
     at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
      at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
       at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
     at org.eclipse.equinox.launcher.Main.main(Main.java:1414)






    John Henley
    Posts: 3353
      Usually, this is due to user configuration/security on the user who is set up in the "Infor Lawson" configuration.
      Here are some notes I have.

      Make sure you have it working with the web version before you even attempt to use the EJB version.
      Make sure the user in the Infor Lawson configuration has access to the GEN product line, usually assigning the LawsonQueryToolsRole takes care of this.
      Check that the user has CHECKLS = YES

      Make sure you can run this URL and get data:

      Create a trace file in c:\users\ folder on the IPD machine; file needs to be named lawson-httpclient-trace.log
      Then when Lawson Query Node is used in IPD, trace logging will be done to that file to help diagnose.
      (remember to remove the file when you're done troubleshooting).

      Not sure if you're using ADFS or not, but if you're using ADFS, make sure you have the correct port in the Lawson Configuration, e.g. to bypass the ADFS login screen. And make sure the user has a THICKCLIENTLDAPLS identity.
      Thanks for using the LawsonGuru.com forums!
      Veteran Member
      Posts: 55
      Veteran Member

        Hi John,   thanks for the messages.  Gives me a place to start.   

        Just a question on this statement, 

        "Make sure the user in the Infor Lawson configuration has access to the GEN product line, usually assigning the LawsonQueryToolsRole takes care of this.
        Check that the user has CHECKLS = YES"

        Is this in LSA where it is suppose to be set? 

        We are using ADFS for about week now. 

        Not sure if you're using ADFS or not, but if you're using ADFS, make sure you have the correct port in the Lawson Configuration, e.g. to bypass the ADFS login screen.

         And make sure the user has a THICKCLIENTLDAPLS identity.   Where do I look for this identity? 

        Apologize for the dumb questions but I trying to see my way thru this. 

        When I run the "Test Connection" out of the definition in Rich Client, (For Both WEB and EJB)  it comes back as successful. 

        In the URL,   is the server the Ming.le box? 




        John Henley
        Posts: 3353
          Yes, the security settings are in LSA. The URL is against LSF to test security access. If that doesn’t work and return results, then it is security access as the root cause.
          Thanks for using the LawsonGuru.com forums!
          Alex Tsekhansky
          Veteran Member
          Posts: 92
          Veteran Member

            Hi, Terry.

            When you get ADFS setup, you also get non-ADFS endpoints (URLs) and services as part of that setup (it's required by Lawson).

            Lawson requires all IPA calls to LSF done via non-ADFS endpoint.

            For example, if your LSF Portal can be accessed via something like


            when implementing ADFS, you will ALSO get another URL - something like


            The one on port 443 will use ADFS, while the other one, on port 1443 will use non-ADFS login that will be indirectly tied to a BIND service. The actual service tied to this URL (endpoint) is what Lawson documentation sometimes calls THICKCLIENTLOGIN (in your particular case the service name may be different). That service, just like SSOP, has identities associated with it, which means in order to login thta way, you must have proper identities set for that service.

            Veteran Member
            Posts: 55
            Veteran Member
              Hi John/Alex thanks for the Input. Looks like it had to do with the " And make sure the user has a THICKCLIENTLDAPLS identity. "