web-services - 具有基本身份验证的 wsimport 不允许在用户名或密码中使用 @
问题描述
问题:我正在尝试使用基本身份验证为 Web 服务调用 wsimport 工具。不幸的是,我的密码中有@ char。
我尝试了以下方法:我创建了一个 Authfile.txt,其中包含以下内容。 http://username:pass@word@hostname:port/ws/mywebservice?wsdl
注意:用户名和密码是访问 Web 服务的基本身份验证凭据。
我使用以下选项运行 wsimport 工具
wsimport -p com.example.ws -Xauthfile Authfile.txt -Xnocompile -keep -XadditionalHeaders -extension -B-XautoNameResolution http://hostname:port/ws/mywebservice?wsdl
wsimport 工具抛出以下错误消息..... [错误] “ http://username:pass@word@hostname:port/ws/mywebservice?wsdl ”不是有效的授权信息格式。格式为 http[s]://user:password@host:port//
解决方案
答:通过将@替换为 %40 来更改 Authfile.txt 文件的内容,如下所示:
http://username:pass%40word@hostname:port/ws/mywebservice?wsdl
然后我像以前一样运行 wsimport
wsimport -p com.example.ws -Xauthfile Authfile.txt -Xnocompile -keep -XadditionalHeaders -extension -B-XautoNameResolution http://hostname:port/ws/mywebservice?wsdl
现在,它生成了没有错误的java文件。
我花了几个多小时试图解决这个问题。希望这可以帮助。
推荐阅读
- python - 查找未返回值的下一个兄弟姐妹。如何在没有其余类的情况下提取我需要的两个类?
- flutter - 如何保存列表
在列表中 ? - javascript - 如何防止嵌入式 Javascript 自动滚动页面
- google-apps-script - 如何在不更改 Google 工作表上的整行的情况下使用数据验证自动填充单元格?
- firebase - 从 Firebase Storage 获取图片并展示给用户 Flutter
- reactjs - React img 显示 [object Module] 而不是图像
- python - 带有图像输入的 django 表单
- html - 将文本与按钮放在同一行
- css - 如何在 Tailwind 中创建具有间隙的等宽列网格?
- r - RenderTable 函数在循环中表现异常