directory-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mert Çalışkan <mcalis...@gmail.com>
Subject Re: classcast on ApacheDS
Date Wed, 22 Apr 2009 14:59:49 GMT
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
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message