For ease of review, I moved the complete changes into a webrev.

  http://cr.openjdk.java.net/~chegar/8145589/webrev/

-Chris.

On 17 Dec 2015, at 15:08, Chris Hegarty <chris.hega...@oracle.com> wrote:

> On 17 Dec 2015, at 14:54, Roger Riggs <roger.ri...@oracle.com> wrote:
> 
>> Hi Chris,
>> 
>> Looks fine.
> 
> Thanks Roger. Just a little addition to this review.
> 
> While not strictly necessary, I’d like to clean up another, string,
> reference use in a reflective call. ( It is not causing a failure as
> the security manager will restrict access to sun.*, but it may 
> avoid confusion in the future.
> 
> diff --git a/test/java/beans/EventHandler/Test6277246.java 
> b/test/java/beans/EventHandler/Test6277246.java
> --- a/test/java/beans/EventHandler/Test6277246.java
> +++ b/test/java/beans/EventHandler/Test6277246.java
> @@ -39,7 +39,7 @@
>             Class container = Class.forName("java.lang.Class");
>             Class parameter = Class.forName("java.lang.String");
>             Method method = container.getMethod("forName", parameter);
> -            Object[] arglist = new Object[] {"sun.misc.BASE64Encoder"};
> +            Object[] arglist = new Object[] 
> {"sun.security.x509.X509CertInfo"};
>             EventHandler eh = new EventHandler(Test6277246.class, "forName", 
> "", "forName");
>             Object object = eh.invoke(null, method, arglist);
>             throw new Error((object != null) ? "test failure" : "test error”);
> 
> -Chris.
> 
>> Roger
>> 
>> 
>> On 12/17/2015 9:46 AM, Chris Hegarty wrote:
>>> The removal of BASE64Encoder, and a related types, in 8144479 [1]
>>> has triggered the failure of java/beans/Introspector/Test6277246.java.
>>> Another internal type should be used instead of sun.misc.BASE64Encoder.
>>> The sun.security.x509 package seems stable, and is being used in other
>>> areas, like langtools and jigsaw/jake to test accessibility.
>>> 
>>> 
>>> diff --git a/test/java/beans/Introspector/Test6277246.java 
>>> b/test/java/beans/Introspector/Test6277246.java
>>> --- a/test/java/beans/Introspector/Test6277246.java
>>> +++ b/test/java/beans/Introspector/Test6277246.java
>>> @@ -25,7 +25,7 @@
>>>  * @test
>>>  * @bug 6277246
>>>  * @summary Tests problem with java.beans use of reflection
>>> - * @modules java.base/sun.misc
>>> + * @modules java.base/sun.security.x509
>>>  *          java.desktop
>>>  * @run main/othervm Test6277246
>>>  * @author Jeff Nisewanger
>>> @@ -36,11 +36,10 @@
>>> import java.beans.Introspector;
>>> import java.beans.MethodDescriptor;
>>> import java.lang.reflect.Method;
>>> -import sun.misc.BASE64Encoder;
>>>   public class Test6277246 {
>>>     public static void main(String[] args) throws IntrospectionException {
>>> -        Class type = BASE64Encoder.class;
>>> +        Class type = sun.security.x509.X509CertInfo.class;
>>>         System.setSecurityManager(new SecurityManager());
>>>         BeanInfo info = Introspector.getBeanInfo(type);
>>>         for (MethodDescriptor md : info.getMethodDescriptors()) {
>>> @@ -48,7 +47,7 @@
>>>             System.out.println(method);
>>>               String name = method.getDeclaringClass().getName();
>>> -            if (name.startsWith("sun.misc.")) {
>>> +            if (name.startsWith("sun.")) {
>>>                 throw new Error("found inaccessible method");
>>>             }
>>>         }
>>> 
>>> diff --git a/test/ProblemList.txt b/test/ProblemList.txt
>>> --- a/test/ProblemList.txt
>>> +++ b/test/ProblemList.txt
>>> @@ -126,9 +126,6 @@
>>> java/beans/Introspector/8132566/OverridePropertyInfoTest.java generic-all
>>> java/beans/Introspector/8132566/OverrideUserDefPropertyInfoTest.java 
>>> generic-all
>>> -# 8145589
>>> -java/beans/Introspector/Test6277246.java                      generic-all
>>> -
>>> ############################################################################
>>>   # jdk_lang
>>> 
>>> 
>>> -Chris.
>>> 
>>> [1] https://bugs.openjdk.java.net/browse/JDK-8144479
>> 
> 

Reply via email to