【问题标题】:How to generate source files from navision webservice with ntlm authentication如何使用 ntlm 身份验证从 navision webservice 生成源文件
【发布时间】:2018-01-17 11:29:32
【问题描述】:

我正在尝试使用 wsimport 从 Navision Web 服务(NTLM 身份验证)生成源文件。下面是命令 wsimport -XdisableSSLHostnameVerification -d generated -s source -Xauthfile auth2.txt -keep "https://XXX.XXX.XXX.XXX:XXXX/XXXell/WS/XXXXLimited/Page/XXXXXOrder"

在 auth.txt 中

http[s]://user:password@host:port//

我无法生成源文件。请提供任何可以提供帮助的链接或示例

任何快速帮助都将得到应用....

【问题讨论】:

    标签: wsimport navision ntlm-authentication


    【解决方案1】:

    只需让 Navision 管理员更改配置以使用基本身份验证:

    How to: Use an Access Key for SOAP and OData Web Service Authentication

    干杯

    【讨论】:

      【解决方案2】:

      这个帖子很老了,但如果有人路过,我分享一下我的经验。

      对于 NTLM,您确实不需要需要文件 auth.txt

      TL;TR

      如果您使用的 Java 大于 1.8.0_181,请使用 tools.jar com.sun.tools.internal.ws.WsImport 并在前面添加 Java 选项 "-Dhttp.auth.ntlm.domain=MYDOMAIN" "-Djdk.http.ntlm.transparentAuth=allHosts"

      加长版

      在 Java 1.8.0_181 之前,NTLM 是默认启用的,但现在不再是这种情况了(我使用的当前版本是 1.8.0_222")。请参阅 https://stackoverflow.com/a/54628051/349228

      为了能够将 NTLM 与 wsimport 工具一起使用,我必须手动使用 tools.jar

      java "-Dhttp.auth.ntlm.domain=MYDOMAIN" "-Djdk.http.ntlm.transparentAuth=allHosts" -cp %JAVA_HOME%\lib\tools.jar com.sun.tools.internal.ws.WsImport -p "my.target.package.name" -d . -keep -encoding UTF-8 "http://navisionhost:7047/DynamicsNAV110/WS/Test 01/Page/MyPage"

      NTLM 的关键部分是 2 个 java 选项 "-Dhttp.auth.ntlm.domain=MYDOMAIN" "-Djdk.http.ntlm.transparentAuth=allHosts"。除了我们手动从这个 jar %JAVA_HOME%\lib\tools.jar 运行 Main Java Class 之外,其余的都接近原生工具调用。

      【讨论】:

        猜你喜欢
        • 2021-05-01
        • 1970-01-01
        • 2018-04-29
        • 2018-09-28
        • 2014-08-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多