directory-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Yiannis Mavroukakis <imavrouka...@gameaccount.com>
Subject Re: classcast on ApacheDS
Date Wed, 22 Apr 2009 15:09:16 GMT
I go via the "build your own" route to be honest, just get the entire 
source tree via SVN and do a mvn -Dmaven.test.skip=true install

Y.

Mert Çalışkan wrote:
> ok,
> is there any nightly builds? or I should do it myself?
>
> 2009/4/22 Yiannis Mavroukakis <imavroukakis@gameaccount.com>
>
>   
>> Sorry I meant build off of the SVN branch, this is what I am using.
>>
>>
>> Mert Çalışkan wrote:
>>
>>     
>>> 1.5.5?
>>> latest downloads are only for 1.5.4, no?
>>> http://directory.apache.org/apacheds/1.5/downloads.html
>>>
>>> 2009/4/22 Yiannis Mavroukakis <imavroukakis@gameaccount.com>
>>>
>>>
>>>
>>>       
>>>> Have you tried this with 1.5.5 ?
>>>>
>>>>
>>>> Mert Çalışkan wrote:
>>>>
>>>>
>>>>
>>>>         
>>>>> yes, when that method executes, my ApacheDS server (standalone working
>>>>> one)
>>>>> throws that error.
>>>>>
>>>>>
>>>>> 2009/4/22 Yiannis Mavroukakis <imavroukakis@gameaccount.com>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>           
>>>>>> Are you getting the same ClassCastException as the root cause of
the
>>>>>> search?
>>>>>>
>>>>>>
>>>>>> Mert Çalışkan wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>             
>>>>>>> Hey,
>>>>>>>
>>>>>>> via jdni calls I guess, seam's ldap-identity-store is taking
care
>>>>>>> of...
>>>>>>> lemme elaborate the case,
>>>>>>>
>>>>>>> Actually before creating a user, the seam framework is doing
a search
>>>>>>> with
>>>>>>> userExists method.
>>>>>>>
>>>>>>>  public boolean userExists(String name)
>>>>>>>  {
>>>>>>>    InitialLdapContext ctx = null;
>>>>>>>    try
>>>>>>>    {
>>>>>>>       ctx = initialiseContext();
>>>>>>>
>>>>>>>       String[] userAttr = {getUserNameAttribute()};
>>>>>>>
>>>>>>>       SearchControls controls = new SearchControls();
>>>>>>>       controls.setSearchScope(searchScope);
>>>>>>>       controls.setReturningAttributes(userAttr);
>>>>>>>       controls.setTimeLimit(getSearchTimeLimit());
>>>>>>>
>>>>>>>       StringBuilder userFilter = new StringBuilder();
>>>>>>>
>>>>>>>       Object[] filterArgs = new Object[getUserObjectClasses().length];
>>>>>>>       for (int i = 0; i < getUserObjectClasses().length; i++)
>>>>>>>       {
>>>>>>>          userFilter.append("(");
>>>>>>>          userFilter.append(getObjectClassAttribute());
>>>>>>>          userFilter.append("={");
>>>>>>>          userFilter.append(i);
>>>>>>>          userFilter.append("})");
>>>>>>>          filterArgs[i] = getUserObjectClasses()[i];
>>>>>>>       }
>>>>>>>
>>>>>>>       NamingEnumeration answer = ctx.search(getUserContextDN(),
>>>>>>> userFilter.toString(), filterArgs, controls);
>>>>>>>       while (answer.hasMore())
>>>>>>>       {
>>>>>>>          SearchResult sr = (SearchResult) answer.next();
>>>>>>>          Attributes attrs = sr.getAttributes();
>>>>>>>          Attribute user = attrs.get(getUserNameAttribute());
>>>>>>>
>>>>>>>          for (int i = 0; i < user.size(); i++)
>>>>>>>          {
>>>>>>>             Object value = user.get(i);
>>>>>>>             if (name.equals(value))
>>>>>>>             {
>>>>>>>                answer.close();
>>>>>>>                return true;
>>>>>>>             }
>>>>>>>          }
>>>>>>>       }
>>>>>>>       answer.close();
>>>>>>>       return false;
>>>>>>>    }
>>>>>>>    catch (NamingException ex)
>>>>>>>    {
>>>>>>>       throw new IdentityManagementException("Error getting users",
>>>>>>> ex);
>>>>>>>    }
>>>>>>>    finally
>>>>>>>    {
>>>>>>>       if (ctx != null)
>>>>>>>       {
>>>>>>>          try
>>>>>>>          {
>>>>>>>             ctx.close();
>>>>>>>          }
>>>>>>>          catch (NamingException ex) {}
>>>>>>>       }
>>>>>>>    }
>>>>>>>  }
>>>>>>>
>>>>>>> and this is throwing out,
>>>>>>>
>>>>>>>  Caused by:
>>>>>>> org.jboss.seam.security.management.IdentityManagementException:
>>>>>>> Error getting users
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.jboss.seam.security.management.LdapIdentityStore.userExists(LdapIdentityStore.java:1235)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.jboss.seam.security.management.IdentityManager.userExists(IdentityManager.java:172)
>>>>>>>  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>>  at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>  at
>>>>>>> org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:335)
>>>>>>>  ... 79 more
>>>>>>> Caused by: javax.naming.CommunicationException: Request: 2 cancelled;
>>>>>>> remaining name 'ou=people,o=mycompany'
>>>>>>>  at com.sun.jndi.ldap.LdapRequest.getReplyBer(LdapRequest.java:60)
>>>>>>>  at com.sun.jndi.ldap.Connection.readReply(Connection.java:411)
>>>>>>>
>>>>>>> M
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Apr 22, 2009 at 3:55 PM, Yiannis Mavroukakis <
>>>>>>> imavroukakis@gameaccount.com> wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>               
>>>>>>>> How are you creating this new person? Via JNDI calls or through
the
>>>>>>>> DS
>>>>>>>> API?
>>>>>>>>
>>>>>>>> Y.
>>>>>>>>
>>>>>>>>
>>>>>>>> Mert Çalışkan wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>                 
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> I'm integrating the seam framework's user management
module with
>>>>>>>>> ApacheDS
>>>>>>>>> ldap. For creating a new user (person objectClass) in
the DS I got
>>>>>>>>> the
>>>>>>>>> error
>>>>>>>>> below,
>>>>>>>>> So apacheDS is forcing the client to close the conn since
it gets a
>>>>>>>>> classcast. I'm on 1.5.4 version. How to debug & solve
this? Any
>>>>>>>>> clues?
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>>
>>>>>>>>> M
>>>>>>>>>
>>>>>>>>> Trace:
>>>>>>>>>
>>>>>>>>> [15:39:46] WARN
>>>>>>>>> [org.apache.directory.server.ldap.LdapProtocolHandler]
>>>>>>>>> -
>>>>>>>>> [/
>>>>>>>>> 127.0.0.1:2453] Unexpected exception forcing
>>>>>>>>> session to close: sending disconnect notice to client.
>>>>>>>>> *org.apache.mina.filter.codec.ProtocolDecoderException:
>>>>>>>>> java.lang.ClassCastException: org.apache.directory.shared.ldap.co
>>>>>>>>> dec.search.AttributeValueAssertionFilter cannot be cast
to
>>>>>>>>> org.apache.directory.shared.ldap.codec.search.ConnectorFilter*
>>>>>>>>> (Hexdump: 30 81 82 02 01 02 63 60 04 17 6F 75 3D 70 65
6F 70 6C 65
>>>>>>>>> 2C
>>>>>>>>> 6F
>>>>>>>>> 3D
>>>>>>>>> 6F 6E 74 6F 6D 65 74 72 69 63 73 0A 01 02 0
>>>>>>>>> A 01 03 02 01 00 02 01 0B 01 01 00 A3 15 04 0B 6F 62
6A 65 63 74 43
>>>>>>>>> 6C
>>>>>>>>> 61
>>>>>>>>> 73
>>>>>>>>> 73 04 06 70 65 72 73 6F 6E A3 18 04 0B 6F 6
>>>>>>>>> 2 6A 65 63 74 43 6C 61 73 73 04 09 75 69 64 4F 62 6A
65 63 74 30 05
>>>>>>>>> 04
>>>>>>>>> 03
>>>>>>>>> 75
>>>>>>>>> 69 64 A0 1B 30 19 04 17 32 2E 31 36 2E 38 3
>>>>>>>>> 4 30 2E 31 2E 31 31 33 37 33 30 2E 33 2E 34 2E 32)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:165)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:6
>>>>>>>>> 48)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>>>>>>>>>    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
>>>>>>>>> Source)
>>>>>>>>>    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
>>>>>>>>> Source)
>>>>>>>>>    at java.lang.Thread.run(Unknown Source)
>>>>>>>>> Caused by: java.lang.ClassCastException:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.ldap.codec.search.AttributeValueAssertionFilter
>>>>>>>>> can
>>>>>>>>> not be cast to
>>>>>>>>> org.apache.directory.shared.ldap.codec.search.ConnectorFilter
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.ldap.codec.search.SearchRequest.addCurrentFilter(SearchRequest.java:356)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.ldap.codec.actions.InitEqualityMatchFilterAction.action(InitEqualityMatchFilterAc
>>>>>>>>> tion.java:70)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.asn1.ber.grammar.AbstractGrammar.executeAction(AbstractGrammar.java:153)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.asn1.ber.Asn1Decoder.treatTLVDoneState(Asn1Decoder.java:620)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.asn1.ber.Asn1Decoder.decode(Asn1Decoder.java:796)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.ldap.codec.TwixDecoder.decode(TwixDecoder.java:110)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.ldap.message.MessageDecoder.decode(MessageDecoder.java:150)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.directory.shared.asn1.codec.Asn1CodecDecoder.decode(Asn1CodecDecoder.java:53)
>>>>>>>>>    at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:158)
>>>>>>>>>    ... 8 more
>>>>>>>>> [15:39:46] WARN
>>>>>>>>> [org.apache.directory.server.ldap.LdapProtocolHandler]
>>>>>>>>> -
>>>>>>>>> Null LdapSession given to cleanUpSession.
>>>>>>>>> [15:39:46] WARN
>>>>>>>>> [org.apache.directory.server.ldap.LdapProtocolHandler]
>>>>>>>>> -
>>>>>>>>> Null LdapSession given to cleanUpSession.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                   
>>>       
>
>   

Mime
View raw message