[jcifs] UnknownHostException
jbaker-cifs at javasystemsolutions.com
jbaker-cifs at javasystemsolutions.com
Mon Nov 6 07:03:26 GMT 2006
Hello,
Overview: Tomcat running a web app using the NTLM filter trying to
authenticate against a Windows 2003 PDC.
Any thoughts on why jcifs would report an unknown host exception? This follows
on to a NullPointerException that I reported some months ago (see this
thread: http://lists.samba.org/archive/jcifs/2006-July/006375.html).
Here's the web.xml:
<init-param>
<param-name>jcifs.netbios.wins</param-name>
<param-value>192.168.0.54</param-value>
</init-param>
<init-param>
<param-name>jcifs.smb.client.domain</param-name>
<param-value>MYCOMPANY</param-value>
</init-param>
Here's the logs:
- Unable to find required classes (javax.activation.DataHandler and
javax.mail.internet.MimeMultipart). Attachment support is disabled.
NameQueryRequest[nameTrnId=1,isResponse=false,opCode=QUERY,isAuthAnswer=false,isTruncated=false,isRecurAvailable=false,isRecurDesired=true,isBroadcast=false,resultCode=0,questionCount=1,answerCount=0,authorityCount=0,additionalCount=0,questionName=MYCOMPANY<1C>,questionType=0x0020,questionClass=IN,recordName=null,recordType=0x0000,recordClass=0x0000,ttl=0,rDataLength=0]
NetBIOS: new data read from socket
00000: 00 01 01 00 00 01 00 00 00 00 00 00 20 45 4E 45 |............ ENE|
00010: 42 45 4F 45 4A 45 4F 46 47 45 46 46 44 46 45 45 |BEOEJEOFGEFFDFEE|
00020: 4E 45 46 45 4F 46 45 46 44 43 41 42 4D 00 00 20 |NEFEOFEFDCABM.. |
00030: 00 01 |.. |
NameQueryResponse[nameTrnId=1,isResponse=true,opCode=QUERY,isAuthAnswer=true,isTruncated=false,isRecurAvailable=true,isRecurDesired=true,isBroadcast=false,resultCode=3,questionCount=0,answerCount=0,authorityCount=0,additionalCount=0,questionName=null,questionType=0x0000,questionClass=IN,recordName=MYCOMPANY<1C>,recordType=NULL,recordClass=IN,ttl=0,rDataLength=0,addrEntry=[Ljcifs.netbios.NbtAddress;@bf1d3b]
00000: 00 01 85 83 00 00 00 00 00 00 00 00 20 45 4E 45 |............ ENE|
00010: 42 45 4F 45 4A 45 4F 46 47 45 46 46 44 46 45 45 |BEOEJEOFGEFFDFEE|
00020: 4E 45 46 45 4F 46 45 46 44 43 41 42 4D 00 00 0A |NEFEOFEFDCABM...|
00030: 00 01 00 00 00 00 00 00 |........ |
- Servlet.service() for servlet HomeServlet threw exception
java.net.UnknownHostException: MYCOMPANY
at jcifs.netbios.NameServiceClient.getAllByName(NameServiceClient.java:292)
at jcifs.netbios.NbtAddress.getAllByName(NbtAddress.java:454)
at jcifs.smb.SmbSession.getChallengeForDomain(SmbSession.java:95)
at jcifs.http.NtlmHttpFilter.negotiate(NtlmHttpFilter.java:150)
at jcifs.http.NtlmHttpFilter.doFilter(NtlmHttpFilter.java:114)
at
com.javasystemsolutions.mtsso.NTLMHttpFilter.doFilter(NTLMHttpFilter.java:24)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:566)
java.net.SocketTimeoutException: Receive timed out
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136)
at java.net.DatagramSocket.receive(DatagramSocket.java:711)
at jcifs.netbios.NameServiceClient.run(NameServiceClient.java:184)
at java.lang.Thread.run(Thread.java:566)
- Servlet.service() for servlet HomeServlet threw exception
java.lang.NullPointerException
at jcifs.smb.SmbSession.getChallengeForDomain(SmbSession.java:106)
at jcifs.http.NtlmHttpFilter.negotiate(NtlmHttpFilter.java:150)
at jcifs.http.NtlmHttpFilter.doFilter(NtlmHttpFilter.java:114)
at
com.javasystemsolutions.mtsso.NTLMHttpFilter.doFilter(NTLMHttpFilter.java:24)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:566)
- Servlet.service() for servlet HomeServlet threw exception
java.lang.NullPointerException
at jcifs.smb.SmbSession.getChallengeForDomain(SmbSession.java:106)
at jcifs.http.NtlmHttpFilter.negotiate(NtlmHttpFilter.java:150)
at jcifs.http.NtlmHttpFilter.doFilter(NtlmHttpFilter.java:114)
at
com.javasystemsolutions.mtsso.NTLMHttpFilter.doFilter(NTLMHttpFilter.java:24)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:566)
Interestingly, when I set up such an example on my Linux machine, I can't
resolve MYCOMPANY but the NTLM auth works against my Windows 2003 server...
This makes me wonder why an UnknownHostException is being reported, given the
NTLM module works on a machine that can't resolve the domain name.
Any info much appreciated
John
More information about the jcifs
mailing list