IFSFile用户密码*无

问题描述 投票:1回答:1

尝试使用JT400.jar中的IFSFile对象创建IFSFile时,我遇到了一些麻烦。我面临的问题是当BATCH用户调用调用JAVA的进程时(没有启用AS400机器的登录)。

给出例外

密码为*无。:XXXXXX com.ibm.as400.access.AS400SecurityException:密码为* NONE。:XXXXXX at com.ibm.as400.access.AS400ImplRemote.returnSecurityException(AS400ImplRemote.java:2219)at com.ibm.as400。 access.CurrentUser.getUserInfo(CurrentUser.java:79)at com.ibm.as400.access.AS400ImplRemote.getPassword(AS400ImplRemote.java:1411)at com.ibm.as400.access.AS400ImplRemote.signon(AS400ImplRemote.java:2507) at com.ibm.as400.access.AS400.sendSignonRequest(AS400.java:3351)at com.ibm.as400.access.AS400.promptSignon(AS400.java:2938)at com.ibm.as400.access.AS400.signon (AS400.java:4246)com.ibm.as400.access.AS400.connectService(AS400.java:1336)位于com.ibm的com.ibm.as400.access.IFSFile.chooseImpl(IFSFile.java:630)。 as400.access.IFSFile.copyTo(IFSFile.java:729)at com.ibm.as400.access.IFSFile.copyTo(IFSFile.java:699)

使用的代码:

    AS400 as400 = new AS400("localhost");

    //Obtain the template path
    String templatePath ="/HOME/XXX/auth.txt";

    IFSFile templateAuth = new IFSFile(as400,templatePath); 
    templateAuth.copyTo(fileXML + ".xml");

我检查了一些已打开的线程但没有获得任何结果。 (在下面评论的帖子中找到)

JT400 Read File From IFS with user without password

Java IFSFile on Iseries testing over PC

当BATCH用户调用该进程时,可以选择生成IFSFile(请注意,当启用了登录的用户调用该进程时,该进程按预期工作)

我需要类似于创建JDBCAppender时所做的事情,JDBCAppender对象允许setUser(null)和setPassword(null)使批处理用户能够写入表。

谢谢大家!

file authentication passwords ibm-midrange ifs
1个回答
0
投票

我最近在尝试使用CommandCall时遇到了类似的问题,而在PASSWORD的配置文件下运行是* NONE。我(最终)通过在/QIBM/ProdData/Java400/jt400ntv.jar(恰好是符号链接)上使用本机Java工具箱来解决它。我没有进行任何代码更改:

    AS400 as400 = new AS400();
    CommandCall cc = new CommandCall(as400);
    String wrkenvvar_cmd = MessageFormat.format("ADDENVVAR ENVVAR('JAVA_HOME') VALUE(''{0}'') REPLACE(*YES)",path);
    boolean ok = cc.run(wrkenvvar_cmd);

我希望有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.