You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Sergey Beryozkin (JIRA)" <ji...@apache.org> on 2014/11/11 11:58:33 UTC

[jira] [Commented] (CXF-6095) InjectionUtils can not access a member of class DateTimeZoneBuilder$PrecalculatedZone

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

Sergey Beryozkin commented on CXF-6095:
---------------------------------------

The QueryParam("") feature is a CXF specific extension which is about unwrapping all of the beans recursively if needed and injecting simple type properties into beans.
I see you have JAX-RS annotations inside HistoryParameters - you actually need to use JAX-RS 2.0 BeanParam annotation instead of  QueryParam("").

> InjectionUtils can not access a member of class DateTimeZoneBuilder$PrecalculatedZone
> -------------------------------------------------------------------------------------
>
>                 Key: CXF-6095
>                 URL: https://issues.apache.org/jira/browse/CXF-6095
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 3.0.0-milestone2
>         Environment: Windows 7 or Cent OS 7
>            Reporter: Guillaume CAMUS
>
> I am trying to send a post request with cxf client implementation. But I am getting
> java.lang.IllegalAccessException: Class org.apache.cxf.jaxrs.utils.InjectionUtils can not access a member of class org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone with modifiers "public"
> My method interface is :
> {code}
> @GET
> @Path("history")
> HistoryResult getHistory(@Valid @QueryParam("") HistoryParameters historyParameters)
> {code}
> HistoryParameters has two joda time LocalDate : 
> {code}
> public class HistoryParameters {
>     @NotNull
>     @QueryParam("historyType")
>     private HistoryType historyType;
>     @FieldDescription(title = "Archive from date", value = "Archive from date")
>     @QueryParam("archiveFromDate")
>     private LocalDate archiveFromDate;
>     @FieldDescription(title = "Archive to date", value = "Archive to date")
>     @QueryParam("archiveToDate")
>     private LocalDate archiveToDate;
>     public HistoryParameters() {
>     }
>     ...
> }
> {code}
> Here the stacktrace :
> {quote}
> java.lang.IllegalAccessException: Class org.apache.cxf.jaxrs.utils.InjectionUtils can not access a member of class org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone with modifiers "public" at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:109) at java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:261) at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:253) at java.lang.reflect.Method.invoke(Method.java:599) at org.apache.cxf.jaxrs.utils.InjectionUtils.extractFromMethod(InjectionUtils.java:324) at org.apache.cxf.jaxrs.utils.InjectionUtils.extractFromMethod(InjectionUtils.java:316) at org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(InjectionUtils.java:1147) at org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(InjectionUtils.java:1174) at org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(InjectionUtils.java:1174) at org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(InjectionUtils.java:1174) at org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(InjectionUtils.java:1174) at org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(InjectionUtils.java:1174) at org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(InjectionUtils.java:1174) at org.apache.cxf.jaxrs.utils.InjectionUtils.fillInValuesFromBean(InjectionUtils.java:1174) at org.apache.cxf.jaxrs.utils.InjectionUtils.extractValuesFromBean(InjectionUtils.java:1109) at org.apache.cxf.jaxrs.client.AbstractClient.addMatrixQueryParamsToBuilder(AbstractClient.java:677) at org.apache.cxf.jaxrs.client.ClientProxyImpl.handleQueries(ClientProxyImpl.java:455) at org.apache.cxf.jaxrs.client.ClientProxyImpl.invoke(ClientProxyImpl.java:178) at com.sun.proxy.$Proxy78.getHistoryEntries(Unknown Source)
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)