cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Kulp (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CXF-1740) IndexOutOfBoundsException in MessageContentsList
Date Mon, 11 Aug 2008 14:41:45 GMT

    [ https://issues.apache.org/jira/browse/CXF-1740?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12621465#action_12621465
] 

Daniel Kulp commented on CXF-1740:
----------------------------------


Yea....   Looking at the spec, this will NEVER work in "code first" cases.    In rpc/lit,
the namespace of the wrapper element is from the <soap:body namespace="..."/> tag. 
 However, NOWHERE in the generated code is that namespace saved.   I even checked the spec
on that.   :-(

Thus, I would suggest changing the spring config for the "doesn't work" case to use the wsdl.
  Specify a wsdlLocation attribute as well as the serviceName and endpointName for the service/port
from the wsdl.

That said, there definitely is a code generation problem as well that I'm working on.   It
just won't fix your issue.  :-(

> IndexOutOfBoundsException in MessageContentsList 
> -------------------------------------------------
>
>                 Key: CXF-1740
>                 URL: https://issues.apache.org/jira/browse/CXF-1740
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.1.1
>            Reporter: Iman Rahmatizadeh
>         Attachments: testcase.zip
>
>
> In HolderInInterceptor, this part of code
>             for (MessagePartInfo part : parts) {
>                 if (part.getIndex() != 0 && part.getTypeClass() != null) {
>                     Holder holder = (Holder)outHolders.get(part.getIndex() - 1);
>                     holder.value = inObjects.get(part);
>                     inObjects.put(part, holder);
>                 }
>             }
> the code calls outHolders.get(part.getIndex() - 1), but when calling inObjects.get(part)
on the next line it goes to this method in MessageContentsList :
>     public Object get(MessagePartInfo key) {
>         Object o = super.get(key.getIndex());
>         return o == REMOVED_MARKER ? null : o;
>     }
> where it calls super.get(key.getIndex()),so when the index is 8 in a list of size 8,
I get this exception. (note the -1 at first, and nothing in the latter method, although both
are of type list)
> Previously when I configured the bus & client in java I hadn't this problem, but
now I'm doing it through Spring xml files and I guess I've left something out.
> Attached is a testcase with the working and not working scenario. The library files and
versions used are in the build.xml file 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message