You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@velocity.apache.org by "Nathan Bubna (JIRA)" <de...@velocity.apache.org> on 2008/08/21 00:12:44 UTC

[jira] Resolved: (VELOCITY-579) Can not access a member of class X with modifiers "public" even if method is public

     [ https://issues.apache.org/jira/browse/VELOCITY-579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nathan Bubna resolved VELOCITY-579.
-----------------------------------

       Resolution: Fixed
    Fix Version/s: 1.6

Appears to have been fixed in 1.6, since i cannot replicate this anymore with testcase or following Eric's instructions.

> Can not access a member of class X with modifiers "public" even if method is public
> -----------------------------------------------------------------------------------
>
>                 Key: VELOCITY-579
>                 URL: https://issues.apache.org/jira/browse/VELOCITY-579
>             Project: Velocity
>          Issue Type: Bug
>          Components: Engine
>    Affects Versions: 1.5
>            Reporter: Eric Ballet Baz
>            Priority: Blocker
>             Fix For: 1.6
>
>
> When upgrading from 1.4 to 1.5 none of my template is working anymore.
> For example :
>   [javadoc]  ERROR [console:logVelocityMessage] - ASTMethod.execute() : exception invoking method 'tags' in class com.sun.tools.javadoc.MethodDocImpl
>   [javadoc]  ERROR [console:logVelocityMessage] - java.lang.IllegalAccessException: Class org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl can not access a member of class com.sun.tools.javadoc.DocImpl with modifiers "public"
> The method 'tags()' is public in com.sun.javadoc.Doc, but the implementation is package protected. So the java.lang.reflect.Method object is well returned by the org.apache.velocity.util.introspection.Introspector but not accessible from templates.
> The same errors occured for example for javax.servlet.http.HttpSession Weblogic's implementation which is not public, but methods are !
> It's not possible to wrap all objects javax.servlet.http.HttpSession into public implementations ... 
> The Introspector could call method.setAccessible(true) before returning Method object : if this method has been found, it is a public method !

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


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@velocity.apache.org
For additional commands, e-mail: dev-help@velocity.apache.org