Hi Thomas,
could you please post your LDAP Configuration for Turbine?
kind regards
Juergen
Am 26.04.2010 11:26, schrieb Thomas Fröhlich:
Hi,
is there anybody out there who uses the Turbine framework together
with LDAP or an AD-server? Unfortunately I failed to connect Turbine
to our AD-server.
I have observed the TCP communication on LDAP port 389 using
WIRESHARK. The Turbine connect binding works fine but retrieving the
TurbineGroup informations from LDAP Turbine crashes with an
NullPointerException. You will find the whole stacktrace and a TCP
communication snippet at the end of this mail.
The groups TurbineGroupGlobal an TurbineGroupService are LDAP group
objects expanded by the auxiliary Turbine object turbineGroup. The
test user "mhernandez" is a LDAP user object expanded by the auxiliary
Turbine object turbineUser. All required attributes are filled.
I have red all old mailing list entries concerning LDAP. I'm right if
I assume, that LDAP support isn't finally implemented into Turbine?
Thank you in advance for all hints :)
Kind regards
Thomas Froehlich
************************** snippet stacktrace **************************
2010-04-23 16:23:31,576 [TP-Processor2] ERROR
org.apache.turbine.Turbine - Turbine.handleException:
org.apache.turbine.util.security.DataBackendException: Failed to build
ACL for user 'mhernandez'
at
org.apache.turbine.services.security.ldap.LDAPSecurityService.getACL(LDAPSecurityService.java:139)
at
org.apache.turbine.services.security.TurbineSecurity.getACL(TurbineSecurity.java:444)
at
org.apache.turbine.modules.actions.AccessController.doPerform(AccessController.java:99)
at org.apache.turbine.modules.Action.perform(Action.java:51)
at
org.apache.turbine.modules.ActionLoader.exec(ActionLoader.java:102)
at org.apache.turbine.Turbine.doGet(Turbine.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568)
at
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:421)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
at
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
at java.util.TreeMap.compare(TreeMap.java:1093)
at java.util.TreeMap.put(TreeMap.java:465)
at org.apache.turbine.util.security.GroupSet.add(GroupSet.java:79)
at org.apache.turbine.util.security.GroupSet.add(GroupSet.java:98)
at org.apache.turbine.util.security.GroupSet.<init>(GroupSet.java:66)
at
org.apache.turbine.services.security.ldap.LDAPSecurityService.getGroups(LDAPSecurityService.java:470)
at
org.apache.turbine.services.security.BaseSecurityService.getAllGroups(BaseSecurityService.java:1164)
at
org.apache.turbine.services.security.ldap.LDAPSecurityService.getACL(LDAPSecurityService.java:108)
... 24 more
2010-04-23 16:51:20,382 [TP-Processor9] ERROR
org.apache.turbine.services.pull.TurbinePullService - Could not
instantiate request tool acl from a de.tewisoft.aloe.turbine.ACLTool
object
java.lang.NullPointerException
at java.lang.String.compareTo(String.java:998)
at java.lang.String.compareTo(String.java:90)
at java.util.TreeMap.compare(TreeMap.java:1093)
at java.util.TreeMap.getEntry(TreeMap.java:347)
at java.util.TreeMap.get(TreeMap.java:265)
at
org.apache.turbine.util.security.GroupSet.getGroupByName(GroupSet.java:173)
at
org.apache.turbine.services.security.BaseSecurityService.getGlobalGroup(BaseSecurityService.java:961)
at
org.apache.turbine.services.security.TurbineSecurity.getGlobalGroup(TurbineSecurity.java:595)
at
org.apache.turbine.util.security.TurbineAccessControlList.getPermissions(TurbineAccessControlList.java:148)
at de.tewisoft.aloe.turbine.ACLTool.init(ACLTool.java:43)
at
org.apache.turbine.services.pull.TurbinePullService.initTool(TurbinePullService.java:736)
at
org.apache.turbine.services.pull.TurbinePullService.populateWithRequestTools(TurbinePullService.java:456)
at
org.apache.turbine.services.pull.TurbinePullService.populateContext(TurbinePullService.java:378)
at
org.apache.turbine.services.velocity.TurbineVelocityService.getContext(TurbineVelocityService.java:250)
at
org.apache.turbine.services.velocity.TurbineVelocity.getContext(TurbineVelocity.java:122)
at
org.apache.turbine.modules.pages.VelocityPage.doBuildBeforeAction(VelocityPage.java:50)
at
org.apache.turbine.modules.pages.DefaultPage.doBuild(DefaultPage.java:110)
at org.apache.turbine.modules.Page.build(Page.java:56)
at org.apache.turbine.modules.PageLoader.exec(PageLoader.java:104)
at org.apache.turbine.Turbine.doGet(Turbine.java:796)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568)
at
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:421)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
at
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:595)
******************* snippet LDAP TCP communication *********************
No. Time Source Destination
Protocol Info
32 2010-04-23 16:23:31.642312 192.168.20.231
192.168.20.173 LDAP searchResEntry(2)
"CN=TurbineGroupGlobal,OU=Turbine,OU=myproject,DC=example,DC=com" |
searchResEntry(2)
"CN=TurbineGroupService,OU=Turbine,OU=myproject,DC=example,DC=com" |
searchResDone(2) success [2 results]
Frame 32 (1840 bytes on wire, 1840 bytes captured)
Ethernet II, Src: fa:a2:57:b8:8f:1b (fa:a2:57:b8:8f:1b), Dst:
4e:58:d9:f6:61:fd (4e:58:d9:f6:61:fd)
Internet Protocol, Src: 192.168.20.231 (192.168.20.231), Dst:
192.168.20.173 (192.168.20.173)
Transmission Control Protocol, Src Port: ldap (389), Dst Port:
turbonote-2 (34249), Seq: 23, Ack: 185, Len: 1774
Source port: ldap (389)
Destination port: turbonote-2 (34249)
[Stream index: 3]
Sequence number: 23 (relative sequence number)
[Next sequence number: 1797 (relative sequence number)]
Acknowledgement number: 185 (relative ack number)
Header length: 32 bytes
Flags: 0x18 (PSH, ACK)
Window size: 66304 (scaled)
Checksum: 0xaaeb [validation disabled]
Options: (12 bytes)
[SEQ/ACK analysis]
[PDU Size: 873]
[PDU Size: 879]
[PDU Size: 22]
Lightweight-Directory-Access-Protocol
LDAPMessage searchResEntry(2)
"CN=TurbineGroupGlobal,OU=Turbine,OU=myproject,DC=example,DC=com" [1
result]
messageID: 2
protocolOp: searchResEntry (4)
searchResEntry
objectName:
CN=TurbineGroupGlobal,OU=Turbine,OU=myproject,DC=example,DC=com
attributes: 17 items
PartialAttributeList item objectClass
PartialAttributeList item cn
PartialAttributeList item distinguishedName
PartialAttributeList item instanceType
PartialAttributeList item whenCreated
PartialAttributeList item whenChanged
PartialAttributeList item uSNCreated
PartialAttributeList item uSNChanged
PartialAttributeList item name
PartialAttributeList item objectGUID
PartialAttributeList item objectSid
PartialAttributeList item sAMAccountName
PartialAttributeList item sAMAccountType
PartialAttributeList item groupType
PartialAttributeList item objectCategory
PartialAttributeList item dSCorePropagationData
PartialAttributeList item turbineGroupName
[Response To: 31]
[Time: 0.000349000 seconds]
Lightweight-Directory-Access-Protocol
LDAPMessage searchResEntry(2)
"CN=TurbineGroupService,OU=Turbine,OU=myproject,DC=example,DC=com" [2
results]
messageID: 2
protocolOp: searchResEntry (4)
searchResEntry
objectName:
CN=TurbineGroupService,OU=Turbine,OU=myproject,DC=example,DC=com
attributes: 17 items
PartialAttributeList item objectClass
PartialAttributeList item cn
PartialAttributeList item distinguishedName
PartialAttributeList item instanceType
PartialAttributeList item whenCreated
PartialAttributeList item whenChanged
PartialAttributeList item uSNCreated
PartialAttributeList item uSNChanged
PartialAttributeList item name
PartialAttributeList item objectGUID
PartialAttributeList item objectSid
PartialAttributeList item sAMAccountName
PartialAttributeList item sAMAccountType
PartialAttributeList item groupType
PartialAttributeList item objectCategory
PartialAttributeList item dSCorePropagationData
PartialAttributeList item turbineGroupName
[Response To: 31]
[Time: 0.000349000 seconds]
Lightweight-Directory-Access-Protocol
LDAPMessage searchResDone(2) success [2 results]
messageID: 2
protocolOp: searchResDone (5)
searchResDone
resultCode: success (0)
matchedDN:
errorMessage:
[Response To: 31]
[Time: 0.000349000 seconds]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]