无法在flex应用程序中从Java调用webservice

时间:2016-03-26 08:07:42

标签: java web-services maven axis2

您好我遇到了一些问题,我无法从java调用webservice并将结果发送到flex端。

过程

  • 用户启动应用程序并登录身份验证表单
  • 用户输入登录名和密码并提交身份验证表单
  • 在java端提交调用remoteservice checkUserCredetialFromLdap()
  • 在这个java方法中,我尝试调用外部ldap webservice,如下所示。
  • 负责ldap ws调用的类是自定义jar(Maven依赖项)

    public User checkUserCredetialFromLdap(String identifiant, String password) throws EmmBusinessException, LdapServiceException{
    
        User myUser = null;
        User myCompleteUser = null;
    
         //initialization of webservice with the endpoint URL failed
        Axis1LdapWsAuth ws = new Axis1LdapWsAuth(Config.getProperties().getProperty("endpoint.url"));
    
        try{
            //authentication using webservice
            String csif_sessionID =ws.login(identifiant, password);
            ....
        }
        }catch(LdapServiceException lse)
        {
            EmmBusinessException emmB = new EmmBusinessException(lse,this,"","Unable to get User",Level.WARNING);
            log(emmB);
            throw (emmB);
        }
        catch (Exception t) {
            EmmBusinessException emmB = new EmmBusinessException(t,this,"","Unable to get User",Level.WARNING);
            log(emmB);
            throw (emmB);
        } finally {
            finish();
        }
        return myCompleteUser;
    }
    

我知道可以使用RPC在flex端调用webservice,但我不想这样做,但由于某种原因,我需要并且必须从java端调用webservice。

是不可能的?我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

我建议你:

  • 开发一种代理ldap webservice,它将在flex应用程序和自定义ldap身份验证过程之间架起桥梁。
  • 使用flex中的HttpService将参数发送到代理ldap
  • 使用proxy ldap使用带有参数get from flex的checkUserCredetialFromLdap api