0

我尝试使用 java api 在 adf mobile 上使用 wcf webservice 方法,如下所示的代码片段。我尝试通过创建 web 服务代理在经典的 adf 通用应用程序上运行。然后我可以得到正确的回应。但是当我在 adfmobile 上使用 webservice 方法时,我得到 http 501 错误响应。我尝试使用拖放到 amx 页面并执行绑定操作,结果是相同的。可能是什么原因?brgds

private boolean validateClient()
{
    List pnames = new ArrayList();
    List pvals = new ArrayList();
    List ptypes = new ArrayList();


    pnames.add("UserName");
    pvals.add("test");
    ptypes.add(String.class);

    pnames.add("Password");
    pvals.add("123");
    ptypes.add(String.class);

    pnames.add("DeviceID");
    pvals.add("123456");
    ptypes.add(String.class);




    GenericType result = null;
    try
    {
        ClientDetail clientDetail = null;
        result = (GenericType)AdfmfJavaUtilities.invokeDataControlMethod("mlService", null, "ValidateClient", pnames, pvals, ptypes);
        for (int i = 0; i < result.getAttributeCount(); i++)
        {
            // Get each individual GenericType instance that holds the attribute key-value pairs
            GenericType entityGenericType = (GenericType)result.getAttribute(i);
            clientDetail = (ClientDetail)GenericTypeBeanSerializationHelper.fromGenericType(ClientDetail.class, entityGenericType);
        }


        if (clientDetail != null)
        {
            if (clientDetail.getIsValidate().booleanValue())
                return true;
            else
                AdfmfContainerUtilities.invokeContainerJavaScriptFunction("com.accmee.menu", "navigator.notification.alert",
                                                                          new Object[] { "No access",
                                                                                         "No access: ", "Ok" });
        } else
        {
                AdfmfContainerUtilities.invokeContainerJavaScriptFunction("com.accmee.menu", "navigator.notification.alert",
                                                                          new Object[] { "No access",
                                                                                         "No access: ", "Ok" });
            return false;
        }
    }
    catch (AdfInvocationException aie)
    {
        if (AdfInvocationException.CATEGORY_WEBSERVICE.compareTo(aie.getErrorCategory()) == 0)
        {
            throw new AdfException("Error with the server. Please try later.", AdfException.ERROR);
        }
        aie.printStackTrace();
        throw new AdfException("Uzak veri sağlayısı çağrılırken hata oluştu", AdfException.ERROR);
    }
    return false;
}
4

1 回答 1

0

确保可以从应用程序的测试环境(模拟器或移动设备)内部访问 WSDL URL

于 2013-12-22T19:20:50.257 回答