src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/opt/AccessorInjector.java

changeset 408
b0610cd08440
parent 368
0989ad8c0860
child 637
9c07ef4934dd
     1.1 --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/opt/AccessorInjector.java	Thu Sep 26 10:43:28 2013 -0700
     1.2 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/opt/AccessorInjector.java	Fri Oct 04 16:21:34 2013 +0100
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -63,19 +63,15 @@
    1.11              ClassLoader cl = SecureLoader.getClassClassLoader(beanClass);
    1.12              if(cl==null)    return null;    // how do I inject classes to this "null" class loader? for now, back off.
    1.13  
    1.14 -            Class c = null;
    1.15 -            synchronized (AccessorInjector.class) {
    1.16 -                c = Injector.find(cl,newClassName);
    1.17 -                if(c==null) {
    1.18 -                    byte[] image = tailor(templateClassName,newClassName,replacements);
    1.19 -    //                try {
    1.20 -    //                    new FileOutputStream("debug.class").write(image);
    1.21 -    //                } catch (IOException e) {
    1.22 -    //                    e.printStackTrace();
    1.23 -    //                }
    1.24 -                    if(image==null)
    1.25 -                        return null;
    1.26 -                    c = Injector.inject(cl,newClassName,image);
    1.27 +            Class c = Injector.find(cl,newClassName);
    1.28 +            if (c==null) {
    1.29 +                byte[] image = tailor(templateClassName,newClassName,replacements);
    1.30 +                if (image==null) {
    1.31 +                    return null;
    1.32 +                }
    1.33 +                c = Injector.inject(cl,newClassName,image);
    1.34 +                if (c == null) {
    1.35 +                    Injector.find(cl, newClassName);
    1.36                  }
    1.37              }
    1.38              return c;
    1.39 @@ -112,4 +108,5 @@
    1.40      }
    1.41  
    1.42      private static final ClassLoader CLASS_LOADER = SecureLoader.getClassClassLoader(AccessorInjector.class);
    1.43 +
    1.44  }

mercurial