Tomcat 8无法通过反射访问受保护的成员



我遇到了一个非常奇怪的情况。我的应用程序中的反射可以在Tomcat7上工作,但不能在Tomcat8上工作。我使用反射来按名称检查生成对象的公共字段。

实际情况是,当应用程序在Tomcat8上运行时,会出现非法访问异常。

Field field = response.getClass().getDeclaredField(RESPONSE_FIELD);
        field.setAccessible(true);
        // get response status
        String status = (String) field.get(response);

java.lang.IllegalAccessException: Class com.ccf.services.DistributedCustomerCareService can not access a member of class com.ccf.generated.CcfGetProfileRes with modifiers "protected".

我不知道这个错误怎么可能,有人知道吗?

注意:Java 7在两台电脑上都使用。

这似乎是Tomcat和/或从XSD生成的类的一些临时问题。经过两次重新部署,问题自行解决。

相关内容

  • 没有找到相关文章