On 12/04/17 09:24, Konstantin Kolinko wrote:
> 2017-04-12 1:36 GMT+03:00  <ma...@apache.org>:
>> Author: markt
>> Date: Tue Apr 11 22:36:01 2017
>> New Revision: 1791050
>>
>> URL: http://svn.apache.org/viewvc?rev=1791050&view=rev
>> Log:
>> Refactoring in preparation for Java 9. Refactor to avoid using some methods 
>> that will be deprecated in Java 9 onwards.
>>
>> Modified:
>>     tomcat/trunk/java/javax/el/ExpressionFactory.java
>>     
>> tomcat/trunk/java/javax/security/auth/message/config/AuthConfigFactory.java
>>     tomcat/trunk/java/javax/websocket/ContainerProvider.java
>>     tomcat/trunk/java/javax/websocket/server/ServerEndpointConfig.java
>>     
>> tomcat/trunk/java/org/apache/catalina/authenticator/jaspic/SimpleServerAuthConfig.java
>>     tomcat/trunk/java/org/apache/catalina/connector/Connector.java
>>     tomcat/trunk/java/org/apache/catalina/connector/Request.java
>>     tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java
>>     tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java
>>     tomcat/trunk/java/org/apache/catalina/core/DefaultInstanceManager.java
>>     tomcat/trunk/java/org/apache/catalina/core/StandardContext.java
>>     tomcat/trunk/java/org/apache/catalina/core/StandardHost.java
>>     tomcat/trunk/java/org/apache/tomcat/InstanceManager.java
>>
>> Modified: tomcat/trunk/java/javax/el/ExpressionFactory.java
>> URL: 
>> http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/ExpressionFactory.java?rev=1791050&r1=1791049&r2=1791050&view=diff
>> ==============================================================================
>> --- tomcat/trunk/java/javax/el/ExpressionFactory.java (original)
>> +++ tomcat/trunk/java/javax/el/ExpressionFactory.java Tue Apr 11 22:36:01 
>> 2017
>> @@ -169,13 +169,14 @@ public abstract class ExpressionFactory
>>                  }
>>              }
>>              if (constructor == null) {
>> -                result = (ExpressionFactory) clazz.newInstance();
>> +                result = (ExpressionFactory) 
>> clazz.getDeclaredConstructor().newInstance();
> 
> The above should be
> 
> result = (ExpressionFactory) clazz.getConstructor().newInstance();
> 
> Methods newInstance(), getConstructor() use a public constructor, but
> getDeclared*() may return a non-public method and using it requires
> additional privileges (checkMemberAccess(this, Member.DECLARED)).
> 
> Javadoc: http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html
> 
> 
> The same for other changes in this commit.

Ack. I went with the recommendation in the deprecation comment for
newInstance() but I agree getConstructor() is a better replacement.

Mark


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to