You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Detelin Yordanov (JIRA)" <ji...@apache.org> on 2009/07/24 16:31:14 UTC

[jira] Commented: (AXIS2-4448) DefaultObjectSupplier fails to instantiate static nested classes

    [ https://issues.apache.org/jira/browse/AXIS2-4448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12735067#action_12735067 ] 

Detelin Yordanov commented on AXIS2-4448:
-----------------------------------------

The nested classes support should be documented in official Axis2 documentation. Users should know which scenarios are supported by the DefaultObjectSupplier (inner classes & static nested classes),  and for which they will need to implement custom ObjectSupplier.

> DefaultObjectSupplier fails to instantiate static nested classes
> ----------------------------------------------------------------
>
>                 Key: AXIS2-4448
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4448
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: kernel
>    Affects Versions: 1.5
>            Reporter: Detelin Yordanov
>         Attachments: DefaultObjectSupplier.diff, stacktrace.txt, StaticInnerClassService.aar
>
>
> The current DefaultObjectSupplier implementation cannot instantiate static nested classes. The problem is that it assumes that if the class to instantiate has a declaring class, it is an inner class. However, according to the Java language specification, an inner class is a nested class, which is not declared in a static context. Thus, in case the nested class is declared static, it is not required to create the parent enclosing instance (and it is not even possible, because the inner class does not have an implicit constructor with a parent instance first parameter) 
> See http://java.sun.com/docs/books/jls/third_edition/html/classes.html#8.1.3

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