使用JCIFS上传文件至NAS设备(Logon failure: unknown user name or bad password)解决_little-bee的博客-CSDN博客

使用JCIFS上传文件至NAS设备(NETAPP FAS3140)

知识点:

1、安全认证方式

  http://www.cnblogs.com/artech/archive/2011/01/25/1944472.html
2、NAS存储

http://wenku.baidu.com/view/9370fd12a21614791711284a.html###

问题

jcifs.smb.SmbAuthException: Logon failure: unknown user name or bad password.

at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:596)

at jcifs.smb.SmbTransport.send(SmbTransport.java:722)

at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:354)

at jcifs.smb.SmbSession.send(SmbSession.java:239)

at jcifs.smb.SmbTree.treeConnect(SmbTree.java:176)

at jcifs.smb.SmbFile.doConnect(SmbFile.java:925)

at jcifs.smb.SmbFile.connect(SmbFile.java:974)

at jcifs.smb.SmbFile.connect0(SmbFile.java:890)

at jcifs.smb.SmbFile.queryPath(SmbFile.java:1355)

at jcifs.smb.SmbFile.exists(SmbFile.java:1437)

at com.indigopacific.customagent.tool.FileUtil.IsFileExist(FileUtil.java:301)

at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.ePolicyIsExist(UploadAndUpdatePdfUseJcifsAgent.java:312)

at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.execute(UploadAndUpdatePdfUseJcifsAgent.java:61)

at com.indigopacific.customagent.test.Test.main(Test.java:32)

jcifs.smb.SmbAuthException: Logon failure: unknown user name or bad password.

at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:596)

at jcifs.smb.SmbTransport.send(SmbTransport.java:722)

at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:354)

at jcifs.smb.SmbSession.send(SmbSession.java:239)

at jcifs.smb.SmbTree.treeConnect(SmbTree.java:176)

at jcifs.smb.SmbFile.doConnect(SmbFile.java:925)

at jcifs.smb.SmbFile.connect(SmbFile.java:974)

at jcifs.smb.SmbFile.connect0(SmbFile.java:890)

at jcifs.smb.SmbFile.queryPath(SmbFile.java:1355)

at jcifs.smb.SmbFile.exists(SmbFile.java:1437)

at com.indigopacific.customagent.tool.FileUtil.IsFileExist(FileUtil.java:301)判断文件是否存在失败:Logon failure: unknown user name or bad password.

at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.ePolicyIsExist(UploadAndUpdatePdfUseJcifsAgent.java:312)

at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.execute(UploadAndUpdatePdfUseJcifsAgent.java:61)

at com.indigopacific.customagent.test.Test.main(Test.java:32)

jcifs.smb.SmbAuthException: Logon failure: unknown user name or bad password.

at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:596)

at jcifs.smb.SmbTransport.send(SmbTransport.java:722)

at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:354)

at jcifs.smb.SmbSession.send(SmbSession.java:239)

at jcifs.smb.SmbTree.treeConnect(SmbTree.java:176)

at jcifs.smb.SmbFile.doConnect(SmbFile.java:925)

at jcifs.smb.SmbFile.connect(SmbFile.java:974)

at jcifs.smb.SmbFile.connect0(SmbFile.java:890)

at jcifs.smb.SmbFile.queryPath(SmbFile.java:1355)

at jcifs.smb.SmbFile.exists(SmbFile.java:1437)

at com.indigopacific.customagent.tool.FileUtil.IsFileExist(FileUtil.java:301)

at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.ePolicyIsExist(UploadAndUpdatePdfUseJcifsAgent.java:312)

at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.execute(UploadAndUpdatePdfUseJcifsAgent.java:61)

at com.indigopacific.customagent.test.Test.main(Test.java:32)

java.sql.SQLException: 关闭的连接

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)

at oracle.jdbc.driver.PhysicalConnection.rollback(PhysicalConnection.java:1133)

at com.indigopacific.customagent.UploadAndUpdatePdfUseJcifsAgent.execute(UploadAndUpdatePdfUseJcifsAgent.java:117)

at com.indigopacific.customagent.test.Test.main(Test.java:32)

解决办法

   参考网址:https://communities.netapp.com/thread/24257

在使用JCIFS上传前加上下面这句话

jcifs.Config.setProperty( "jcifs.smb.lmCompatibility", "2");

原因是:

NAS设备的身份认证方式为NTLM,而JCIFS默认的身份认证方式为NTLMv2.


原网址: 访问
创建于: 2023-07-12 16:07:41
目录: default
标签: 无

请先后发表评论
  • 最新评论
  • 总共0条评论