Mercurial > hg > icedtea7-forest-aarch64 > jaxws
changeset 778:4b9ab53543c1
Merge
author | goetz |
---|---|
date | Fri, 25 Oct 2013 11:51:21 +0200 |
parents | d3369261d069 (current diff) f675dfce1e61 (diff) |
children | 919c657684b6 |
files | .hgtags |
diffstat | 96 files changed, 601 insertions(+), 166 deletions(-) [+] |
line wrap: on
line diff
--- a/.hgtags Tue Sep 17 16:33:52 2013 +0200 +++ b/.hgtags Fri Oct 25 11:51:21 2013 +0200 @@ -306,6 +306,22 @@ 0cd0d4e7331f7fc9f9ee77f2275113571bcf67cf jdk7u25-b09 105cdfd4f40837917d0065e3e58052d2854df7da jdk7u25-b10 6de7fec036abf91ce962c74f11a6266491df3fd8 jdk7u25-b11 +a367ebf0c21512867f4ab5cdd206dd8c7817c004 jdk7u14-b16 +74c34f35912d8d7145b3ff34fefea2d2f189f2b4 jdk7u14-b17 +c93a35b3638f45de91013d65543217a002577684 jdk7u14-b18 +82be38857de3b2f6d8def98034f3e7b0827fd9f0 jdk7u14-b19 +82be38857de3b2f6d8def98034f3e7b0827fd9f0 jdk7u14-b19 +d63b21e6c3d29305400dbfc1500090cab89f25d1 jdk7u14-b19 +dd695ad6c5ec797fe61db31600a3fd2dbc62247b jdk7u14-b20 +97bbac299eb801709a924fe777b3ee9c96829d8b jdk7u14-b21 +6e74b3e1773cfbac99998431a5a54c70baaf1dc5 jdk7u14-b22 +e9bbdf789d2b512550e0ca80629980e96f02146d jdk7u40-b23 +adaf9cf486fab1b14c5af9fc6525565760bb9c11 jdk7u40-b24 +aafab1efbd4ced5e05695aa1887813f9f5de9d5c jdk7u40-b25 +6581f9739031120bb7515d3b09fa3501653d11af jdk7u40-b26 +46ebac943288218b14d7ce3df23aa42a70fa4cf9 jdk7u40-b27 +016957700ac905ebf3432ae8ba17d3576a51e585 jdk7u40-b28 +15a82c84d9f7f6c99310380d4766fc68a3882671 jdk7u40-b29 4c5d242efa0d6e0cdb688e41e722bff671dfbfec jdk7u25-b12 6b4a165221304d809f678a18f51c7a8cb042d60b jdk7u25-b13 03073e4e6d3f600102d31e862154f56730838b11 jdk7u25-b14 @@ -347,3 +363,26 @@ 89f6c9663d75d9e4b672aed16f885b84232e9c93 jdk7u40-b42 3ee85b3793de16855e20272336a3565af8477b6b jdk7u40-b43 cbeef786ce489096c39ec5effee4f8f9e770b4af jdk7u40-b60 +4ee34d2cf2d84d0e1f5f20381ade525665ae424c jdk7u40-b61 +b42a4cb742cf76f6c02d105349a7e8111ab8d68b jdk7u40-b62 +000becfcb945d8592cfdef6ef1704b532af56762 jdk7u45-b01 +817632baca26f7566e36c7708455494c15113d88 jdk7u45-b02 +f65baba9400aec6cb29bc06b3139623bb4663225 jdk7u45-b03 +80ff2468f520ed1940915815ceb85e05bd2bc568 jdk7u45-b04 +1128d3934b643660a219532aa1ca554877d89375 jdk7u45-b05 +8da3d41d946925a07a9f1001795959bfdb4c02c6 jdk7u45-b06 +38f5b376c38035f13ede456f158ee26d0cf8d99c jdk7u45-b07 +86f3efd1edae3c0f47ad14bef992e7566eaa94d4 jdk7u45-b08 +ab835f7247e40dd7fb457830eaa31c550b434413 jdk7u45-b09 +bbd594e6cf45ebfc37c71e217772b7f37a9c5750 jdk7u45-b10 +c01eab96821e3c0315c4637e61a8015cbfe63b6a jdk7u45-b11 +05f1274a8aa019584b4ceb05c73fc89bf7b7f4de jdk7u45-b12 +3271849829b7c8ac32f6bb17b763d8a85a1a0a32 jdk7u45-b13 +842dd63be9c633b8448e1837a5bb7b803dfdaad9 jdk7u45-b14 +93a3fb090be58a5a45464f866a7093f24205dae2 jdk7u45-b15 +5524cced32d3959d95ed414add230273bc10c38d jdk7u45-b16 +a8baf22b5972e269a97f7b3b7eec2ad63a8c5aed jdk7u45-b17 +65b0f3ccdc8bcff0d79e1b543a8cefb817529b3f jdk7u45-b18 +c32c6a662d18d7195fc02125178c7543ce09bb00 jdk7u45-b30 +6802a1c098c48b2c8336e06f1565254759025bab jdk7u45-b31 +cb5f95263f620967f5097c5ff8e0b27cfb9e8c44 jdk7u60-b00
--- a/src/share/jaxws_classes/com/sun/org/glassfish/external/statistics/impl/BoundedRangeStatisticImpl.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/org/glassfish/external/statistics/impl/BoundedRangeStatisticImpl.java Fri Oct 25 11:51:21 2013 +0200 @@ -26,6 +26,7 @@ package com.sun.org.glassfish.external.statistics.impl; + import com.sun.org.glassfish.external.statistics.BoundedRangeStatistic; import java.util.Map; import java.lang.reflect.*;
--- a/src/share/jaxws_classes/com/sun/tools/internal/ws/processor/modeler/annotation/WebServiceVisitor.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/tools/internal/ws/processor/modeler/annotation/WebServiceVisitor.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -204,24 +204,24 @@ } portName = ClassNameInfo.getName( d.getSimpleName().replace( - SIGC_INNERCLASS, - SIGC_UNDERSCORE));; - packageName = d.getPackage().getQualifiedName(); - portName = webService != null && webService.name() != null && webService.name().length() >0 ? - webService.name() : portName; - serviceName = ClassNameInfo.getName(d.getQualifiedName())+SERVICE; - serviceName = webService != null && webService.serviceName() != null && - webService.serviceName().length() > 0 ? - webService.serviceName() : serviceName; - wsdlNamespace = seiContext.getNamespaceURI(); - typeNamespace = wsdlNamespace; + SIGC_INNERCLASS, + SIGC_UNDERSCORE));; + packageName = d.getPackage().getQualifiedName(); + portName = webService != null && webService.name() != null && webService.name().length() >0 ? + webService.name() : portName; + serviceName = ClassNameInfo.getName(d.getQualifiedName())+SERVICE; + serviceName = webService != null && webService.serviceName() != null && + webService.serviceName().length() > 0 ? + webService.serviceName() : serviceName; + wsdlNamespace = seiContext.getNamespaceURI(); + typeNamespace = wsdlNamespace; - SOAPBinding soapBinding = d.getAnnotation(SOAPBinding.class); - if (soapBinding != null) { - pushedSOAPBinding = pushSOAPBinding(soapBinding, d, d); - } else if (d.equals(typeDecl)) { - pushedSOAPBinding = pushSOAPBinding(new MySOAPBinding(), d, d); - } + SOAPBinding soapBinding = d.getAnnotation(SOAPBinding.class); + if (soapBinding != null) { + pushedSOAPBinding = pushSOAPBinding(soapBinding, d, d); + } else if (d.equals(typeDecl)) { + pushedSOAPBinding = pushSOAPBinding(new MySOAPBinding(), d, d); + } } public static boolean sameStyle(SOAPBinding.Style style, SOAPStyle soapStyle) { @@ -235,7 +235,7 @@ } protected boolean pushSOAPBinding(SOAPBinding soapBinding, Declaration bindingDecl, - TypeDeclaration classDecl) { + TypeDeclaration classDecl) { boolean changed = false; if (!sameStyle(soapBinding.style(), soapStyle)) { changed = true; @@ -293,7 +293,7 @@ // abstract protected boolean shouldProcessWebService(WebService webService, InterfaceDeclaration intf); -// abstract protected boolean shouldProcessWebService(WebService webService, ClassDeclaration decl); + // abstract protected boolean shouldProcessWebService(WebService webService, ClassDeclaration decl); protected boolean shouldProcessWebService(WebService webService, InterfaceDeclaration intf) { hasWebMethods = false; if (webService == null) @@ -315,9 +315,9 @@ return false; hasWebMethods = hasWebMethods(classDecl); SOAPBinding soapBinding = classDecl.getAnnotation(SOAPBinding.class); - if(soapBinding != null && soapBinding.style() == SOAPBinding.Style.RPC && soapBinding.parameterStyle() == SOAPBinding.ParameterStyle.BARE) { - builder.onError(classDecl.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_SOAPBINDING_PARAMETERSTYLE(soapBinding, classDecl)); - return false; + if(soapBinding != null && soapBinding.style() == SOAPBinding.Style.RPC && soapBinding.parameterStyle() == SOAPBinding.ParameterStyle.BARE) { + builder.onError(classDecl.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_SOAPBINDING_PARAMETERSTYLE(soapBinding, classDecl)); + return false; } return isLegalImplementation(webService, classDecl); } @@ -345,8 +345,8 @@ if (webMethod.exclude()) { if (webMethod.operationName().length() > 0) builder.onError(method.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_WEBMETHOD_ELEMENT_WITH_EXCLUDE("operationName", d.getQualifiedName(), method.toString())); - if (webMethod.action().length() > 0) - builder.onError(method.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_WEBMETHOD_ELEMENT_WITH_EXCLUDE("action", d.getQualifiedName(), method.toString())); + if (webMethod.action().length() > 0) + builder.onError(method.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_WEBMETHOD_ELEMENT_WITH_EXCLUDE("action", d.getQualifiedName(), method.toString())); } else { return true; } @@ -382,7 +382,7 @@ } private InterfaceDeclaration getEndpointInterfaceDecl(String endpointInterfaceName, - ClassDeclaration d) { + ClassDeclaration d) { InterfaceDeclaration intTypeDecl = null; for (InterfaceType interfaceType : d.getSuperinterfaces()) { if (endpointInterfaceName.equals(interfaceType.toString())) { @@ -488,7 +488,7 @@ Collection<Modifier> modifiers = classDecl.getModifiers(); if (!modifiers.contains(Modifier.PUBLIC)){ builder.onError(classDecl.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_WEBSERVICE_CLASS_NOT_PUBLIC(classDecl.getQualifiedName())); - return false; + return false; } if (modifiers.contains(Modifier.FINAL) && !isStateful) { builder.onError(classDecl.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_WEBSERVICE_CLASS_IS_FINAL(classDecl.getQualifiedName())); @@ -538,7 +538,7 @@ } protected boolean classImplementsSEI(ClassDeclaration classDecl, - InterfaceDeclaration intfDecl) { + InterfaceDeclaration intfDecl) { for (InterfaceType interfaceType : classDecl.getSuperinterfaces()) { if (interfaceType.getDeclaration().equals(intfDecl)) return true; @@ -637,8 +637,8 @@ */ if (!isLegalType(method.getReturnType())) { builder.onError(method.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_METHOD_RETURN_TYPE_CANNOT_IMPLEMENT_REMOTE(typeDecl.getQualifiedName(), - method.getSimpleName(), - method.getReturnType())); + method.getSimpleName(), + method.getReturnType())); } boolean isOneway = method.getAnnotation(Oneway.class) != null; if (isOneway && !isValidOnewayMethod(method, typeDecl)) @@ -684,14 +684,14 @@ } protected boolean isLegalParameter(ParameterDeclaration param, - MethodDeclaration method, - TypeDeclaration typeDecl, - int paramIndex) { + MethodDeclaration method, + TypeDeclaration typeDecl, + int paramIndex) { if (!isLegalType(param.getType())) { builder.onError(param.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_METHOD_PARAMETER_TYPES_CANNOT_IMPLEMENT_REMOTE(typeDecl.getQualifiedName(), - method.getSimpleName(), - param.getSimpleName(), - param.getType().toString())); + method.getSimpleName(), + param.getSimpleName(), + param.getType().toString())); return false; } TypeMirror holderType;
--- a/src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java Fri Oct 25 11:51:21 2013 +0200 @@ -334,7 +334,7 @@ if(options.verbose) { listener.message(WscompileMessages.WSIMPORT_ARCHIVE_ARTIFACT(f, options.clientjar)); } - String entry = f.getCanonicalPath().substring(base.length()+1); + String entry = f.getCanonicalPath().substring(base.length()+1).replace(File.separatorChar, '/'); BufferedInputStream bis = new BufferedInputStream( new FileInputStream(f)); JarEntry jarEntry = new JarEntry(entry);
--- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/ModelBuilder.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/ModelBuilder.java Fri Oct 25 11:51:21 2013 +0200 @@ -160,8 +160,8 @@ res = Messages.INCOMPATIBLE_API_VERSION; throw new LinkageError( res.format( - Which.which(XmlSchema.class), - Which.which(ModelBuilder.class) + Which.which(XmlSchema.class), + Which.which(ModelBuilder.class) )); } } @@ -176,8 +176,8 @@ } catch (NoSuchMethodError e) { // we seem to be getting 1.0 runtime throw new LinkageError( Messages.RUNNING_WITH_1_0_RUNTIME.format( - Which.which(WhiteSpaceProcessor.class), - Which.which(ModelBuilder.class) + Which.which(WhiteSpaceProcessor.class), + Which.which(ModelBuilder.class) )); } } @@ -302,7 +302,7 @@ if(nav.isArray(t)) { // no need for checking byte[], because above typeInfoset.getTypeInfo() would return non-null ArrayInfoImpl<T,C,F,M> ai = - createArrayInfo(upstream, t); + createArrayInfo(upstream, t); addTypeName(ai); typeInfoSet.add(ai); return ai; @@ -338,7 +338,7 @@ } protected ElementInfoImpl<T,C,F,M> createElementInfo( - RegistryInfoImpl<T,C,F,M> registryInfo, M m) throws IllegalAnnotationException { + RegistryInfoImpl<T,C,F,M> registryInfo, M m) throws IllegalAnnotationException { return new ElementInfoImpl<T,C,F,M>(this,registryInfo,m); }
--- a/src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/mimepull/MemoryData.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/mimepull/MemoryData.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/mimepull/TempFiles.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/mimepull/TempFiles.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/api/server/InstanceResolver.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/api/server/InstanceResolver.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -232,7 +232,7 @@ public Object invoke(Packet p, Method m, Object... args) throws InvocationTargetException, IllegalAccessException { T t = resolve(p); try { - return m.invoke(t, args ); + return MethodUtil.invoke(t, m, args ); } finally { postInvoke(p,t); }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/api/server/MethodUtil.java Fri Oct 25 11:51:21 2013 +0200 @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package com.sun.xml.internal.ws.api.server; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.logging.Level; +import java.util.logging.Logger; + +/** + * Utility class to invoke sun.reflect.misc.MethodUtil.invoke() if available. If not (other then Oracle JDK) fallbacks + * to java.lang,reflect.Method.invoke() + * + * Be careful, copy of this class exists in several packages, iny modification must be done to other copies too! + */ +class MethodUtil { + + private static final Logger LOGGER = Logger.getLogger(MethodUtil.class.getName()); + private static final Method INVOKE_METHOD; + + static { + Method method; + try { + Class<?> clazz = Class.forName("sun.reflect.misc.MethodUtil"); + method = clazz.getMethod("invoke", Method.class, Object.class, Object[].class); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Class sun.reflect.misc.MethodUtil found; it will be used to invoke methods."); + } + } catch (Throwable t) { + method = null; + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Class sun.reflect.misc.MethodUtil not found, probably non-Oracle JVM"); + } + } + INVOKE_METHOD = method; + } + + static Object invoke(Object target, Method method, Object[] args) throws IllegalAccessException, InvocationTargetException { + if (INVOKE_METHOD != null) { + // sun.reflect.misc.MethodUtil.invoke(method, owner, args) + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Invoking method using sun.reflect.misc.MethodUtil"); + } + try { + return INVOKE_METHOD.invoke(null, method, target, args); + } catch (InvocationTargetException ite) { + // unwrap invocation exception added by reflection code ... + throw unwrapException(ite); + } + } else { + // other then Oracle JDK ... + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Invoking method directly, probably non-Oracle JVM"); + } + return method.invoke(target, args); + } + } + + private static InvocationTargetException unwrapException(InvocationTargetException ite) { + Throwable targetException = ite.getTargetException(); + if (targetException != null && targetException instanceof InvocationTargetException) { + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Unwrapping invocation target exception"); + } + return (InvocationTargetException) targetException; + } else { + return ite; + } + } + +}
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/client/WSServiceDelegate.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/client/WSServiceDelegate.java Fri Oct 25 11:51:21 2013 +0200 @@ -22,6 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ + package com.sun.xml.internal.ws.client; import com.sun.istack.internal.NotNull; @@ -140,8 +141,8 @@ /** * Information about SEI, keyed by their interface type. */ - // private final Map<Class,SEIPortInfo> seiContext = new HashMap<Class,SEIPortInfo>(); - private final Map<QName,SEIPortInfo> seiContext = new HashMap<QName,SEIPortInfo>(); + // private final Map<Class,SEIPortInfo> seiContext = new HashMap<Class,SEIPortInfo>(); + private final Map<QName,SEIPortInfo> seiContext = new HashMap<QName,SEIPortInfo>(); // This executor is used for all the async invocations for all proxies // created from this service. But once the proxy is created, then changing @@ -166,8 +167,8 @@ public WSServiceDelegate(URL wsdlDocumentLocation, QName serviceName, Class<? extends Service> serviceClass) { this( - wsdlDocumentLocation==null ? null : new StreamSource(wsdlDocumentLocation.toExternalForm()), - serviceName,serviceClass); + wsdlDocumentLocation==null ? null : new StreamSource(wsdlDocumentLocation.toExternalForm()), + serviceName,serviceClass); } /** @@ -204,10 +205,10 @@ if(wsdl == null){ if(serviceClass != Service.class){ WebServiceClient wsClient = AccessController.doPrivileged(new PrivilegedAction<WebServiceClient>() { - public WebServiceClient run() { - return serviceClass.getAnnotation(WebServiceClient.class); - } - }); + public WebServiceClient run() { + return serviceClass.getAnnotation(WebServiceClient.class); + } + }); String wsdlLocation = wsClient.wsdlLocation(); wsdlLocation = JAXWSUtils.absolutize(JAXWSUtils.getFileOrURLName(wsdlLocation)); wsdl = new StreamSource(wsdlLocation); @@ -221,8 +222,8 @@ service = model.getService(this.serviceName); if (service == null) throw new WebServiceException( - ClientMessages.INVALID_SERVICE_NAME(this.serviceName, - buildNameList(model.getServices().keySet()))); + ClientMessages.INVALID_SERVICE_NAME(this.serviceName, + buildNameList(model.getServices().keySet()))); // fill in statically known ports for (WSDLPortImpl port : service.getPorts()) ports.put(port.getName(), new PortInfo(this, port)); @@ -255,7 +256,7 @@ private WSDLModelImpl parseWSDL(URL wsdlDocumentLocation, Source wsdlSource) { try { return RuntimeWSDLParser.parse(wsdlDocumentLocation, wsdlSource, createDefaultCatalogResolver(), - true, getContainer(), ServiceFinder.find(WSDLParserExtension.class).toArray()); + true, getContainer(), ServiceFinder.find(WSDLParserExtension.class).toArray()); } catch (IOException e) { throw new WebServiceException(e); } catch (XMLStreamException e) { @@ -345,7 +346,7 @@ //get the first port corresponding to the SEI WSDLPortImpl port = wsdlService.getMatchingPort(portTypeName); if (port == null) - throw new WebServiceException(ClientMessages.UNDEFINED_PORT_TYPE(portTypeName)); + throw new WebServiceException(ClientMessages.UNDEFINED_PORT_TYPE(portTypeName)); QName portName = port.getName(); return getPort(portName, portInterface,features); } @@ -431,8 +432,8 @@ binding.setMode(mode); Dispatch<Object> dispatch = Stubs.createJAXBDispatch( port, binding, jaxbContext, mode,wsepr); - serviceInterceptor.postCreateDispatch((WSBindingProvider)dispatch); - return dispatch; + serviceInterceptor.postCreateDispatch((WSBindingProvider)dispatch); + return dispatch; } @Override @@ -583,7 +584,7 @@ if (wsdlService.get(portName)==null) { throw new WebServiceException( - ClientMessages.INVALID_PORT_NAME(portName,buildWsdlPortNames())); + ClientMessages.INVALID_PORT_NAME(portName,buildWsdlPortNames())); } BindingImpl binding = eif.createBinding(webServiceFeatures,portInterface); @@ -681,7 +682,7 @@ return wsdlService; } - class DaemonThreadFactory implements ThreadFactory { + class DaemonThreadFactory implements ThreadFactory { public Thread newThread(Runnable r) { Thread daemonThread = new Thread(r); daemonThread.setDaemon(Boolean.TRUE);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/client/sei/MethodUtil.java Fri Oct 25 11:51:21 2013 +0200 @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package com.sun.xml.internal.ws.client.sei; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.logging.Level; +import java.util.logging.Logger; + +/** + * Utility class to invoke sun.reflect.misc.MethodUtil.invoke() if available. If not (other then Oracle JDK) fallbacks + * to java.lang,reflect.Method.invoke() + * <p/> + * Be careful, copy of this class exists in several packages, iny modification must be done to other copies too! + */ +class MethodUtil { + + private static final Logger LOGGER = Logger.getLogger(MethodUtil.class.getName()); + private static final Method INVOKE_METHOD; + + static { + Method method; + try { + Class<?> clazz = Class.forName("sun.reflect.misc.MethodUtil"); + method = clazz.getMethod("invoke", Method.class, Object.class, Object[].class); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Class sun.reflect.misc.MethodUtil found; it will be used to invoke methods."); + } + } catch (Throwable t) { + method = null; + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Class sun.reflect.misc.MethodUtil not found, probably non-Oracle JVM"); + } + } + INVOKE_METHOD = method; + } + + static Object invoke(Object target, Method method, Object[] args) throws IllegalAccessException, InvocationTargetException { + if (INVOKE_METHOD != null) { + // sun.reflect.misc.MethodUtil.invoke(method, owner, args) + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Invoking method using sun.reflect.misc.MethodUtil"); + } + try { + return INVOKE_METHOD.invoke(null, method, target, args); + } catch (InvocationTargetException ite) { + // unwrap invocation exception added by reflection code ... + throw unwrapException(ite); + } + } else { + // other then Oracle JDK ... + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Invoking method directly, probably non-Oracle JVM"); + } + return method.invoke(target, args); + } + } + + private static InvocationTargetException unwrapException(InvocationTargetException ite) { + Throwable targetException = ite.getTargetException(); + if (targetException != null && targetException instanceof InvocationTargetException) { + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Unwrapping invocation target exception"); + } + return (InvocationTargetException) targetException; + } else { + return ite; + } + } + +}
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/client/sei/SEIStub.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/client/sei/SEIStub.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -28,17 +28,20 @@ import com.sun.istack.internal.NotNull; import com.sun.istack.internal.Nullable; import com.sun.xml.internal.ws.api.SOAPVersion; +import com.sun.xml.internal.ws.api.addressing.WSEndpointReference; import com.sun.xml.internal.ws.api.client.WSPortInfo; -import com.sun.xml.internal.ws.api.addressing.WSEndpointReference; import com.sun.xml.internal.ws.api.message.Header; import com.sun.xml.internal.ws.api.message.Headers; import com.sun.xml.internal.ws.api.message.Packet; import com.sun.xml.internal.ws.api.model.MEP; import com.sun.xml.internal.ws.api.model.wsdl.WSDLBoundOperation; +import com.sun.xml.internal.ws.api.pipe.Fiber; import com.sun.xml.internal.ws.api.pipe.Tube; -import com.sun.xml.internal.ws.api.pipe.Fiber; import com.sun.xml.internal.ws.binding.BindingImpl; -import com.sun.xml.internal.ws.client.*; +import com.sun.xml.internal.ws.client.RequestContext; +import com.sun.xml.internal.ws.client.ResponseContextReceiver; +import com.sun.xml.internal.ws.client.Stub; +import com.sun.xml.internal.ws.client.WSServiceDelegate; import com.sun.xml.internal.ws.model.JavaMethodImpl; import com.sun.xml.internal.ws.model.SOAPSEIModel; import com.sun.xml.internal.ws.wsdl.OperationDispatcher; @@ -47,6 +50,8 @@ import java.lang.reflect.InvocationHandler; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.lang.reflect.Proxy; import java.util.HashMap; import java.util.Map; @@ -124,13 +129,14 @@ private final Map<Method, MethodHandler> methodHandlers = new HashMap<Method, MethodHandler>(); public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { + validateInputs(proxy, method); MethodHandler handler = methodHandlers.get(method); if (handler != null) { return handler.invoke(proxy, args); } else { // we handle the other method invocations by ourselves try { - return method.invoke(this, args); + return MethodUtil.invoke(this, method, args); } catch (IllegalAccessException e) { // impossible throw new AssertionError(e); @@ -142,6 +148,17 @@ } } + private void validateInputs(Object proxy, Method method) { + if (proxy == null || !Proxy.isProxyClass(proxy.getClass())) { + throw new IllegalStateException("Passed object is not proxy!"); + } + Class<?> declaringClass = method.getDeclaringClass(); + if (method == null || declaringClass == null + || Modifier.isStatic(method.getModifiers())) { + throw new IllegalStateException("Invoking static method is not allowed!"); + } + } + public final Packet doProcess(Packet request, RequestContext rc, ResponseContextReceiver receiver) { return super.process(request, rc, receiver); }
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/AssertionSet.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/AssertionSet.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/AssertionValidationProcessor.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/AssertionValidationProcessor.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/ComplexAssertion.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/ComplexAssertion.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/EffectiveAlternativeSelector.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/EffectiveAlternativeSelector.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/EffectivePolicyModifier.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/EffectivePolicyModifier.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/NestedPolicy.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/NestedPolicy.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/Policy.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/Policy.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyAssertion.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyAssertion.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyConstants.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyConstants.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyException.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyException.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyIntersector.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyIntersector.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMap.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMap.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapExtender.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapExtender.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapKey.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapKey.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapKeyHandler.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapKeyHandler.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapMutator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapMutator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMerger.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMerger.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyScope.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyScope.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicySubject.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicySubject.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/SimpleAssertion.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/SimpleAssertion.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/package-info.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/package-info.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/MethodUtil.java Fri Oct 25 11:51:21 2013 +0200 @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package com.sun.xml.internal.ws.policy.privateutil; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.logging.Level; +import java.util.logging.Logger; + +/** + * Utility class to invoke sun.reflect.misc.MethodUtil.invoke() if available. If not (other then Oracle JDK) fallbacks + * to java.lang,reflect.Method.invoke() + */ +class MethodUtil { + + private static final Logger LOGGER = Logger.getLogger(MethodUtil.class.getName()); + private static final Method INVOKE_METHOD; + + static { + Method method; + try { + Class<?> clazz = Class.forName("sun.reflect.misc.MethodUtil"); + method = clazz.getMethod("invoke", Method.class, Object.class, Object[].class); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Class sun.reflect.misc.MethodUtil found; it will be used to invoke methods."); + } + } catch (Throwable t) { + method = null; + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Class sun.reflect.misc.MethodUtil not found, probably non-Oracle JVM"); + } + } + INVOKE_METHOD = method; + } + + static Object invoke(Object target, Method method, Object[] args) throws IllegalAccessException, InvocationTargetException { + if (INVOKE_METHOD != null) { + // sun.reflect.misc.MethodUtil.invoke(method, owner, args) + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Invoking method using sun.reflect.misc.MethodUtil"); + } + try { + return INVOKE_METHOD.invoke(null, method, target, args); + } catch (InvocationTargetException ite) { + // unwrap invocation exception added by reflection code ... + throw unwrapException(ite); + } + } else { + // other then Oracle JDK ... + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Invoking method directly, probably non-Oracle JVM"); + } + return method.invoke(target, args); + } + } + + private static InvocationTargetException unwrapException(InvocationTargetException ite) { + Throwable targetException = ite.getTargetException(); + if (targetException != null && targetException instanceof InvocationTargetException) { + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Unwrapping invocation target exception"); + } + return (InvocationTargetException) targetException; + } else { + return ite; + } + } + +}
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/PolicyLogger.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/PolicyLogger.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/PolicyUtils.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/PolicyUtils.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -282,13 +282,13 @@ /** * Reflection utilities wrapper */ - public static class Reflection { + static class Reflection { private static final PolicyLogger LOGGER = PolicyLogger.getLogger(PolicyUtils.Reflection.class); /** * Reflectively invokes specified method on the specified target */ - public static <T> T invoke(final Object target, final String methodName, + static <T> T invoke(final Object target, final String methodName, final Class<T> resultClass, final Object... parameters) throws RuntimePolicyUtilsException { Class[] parameterTypes; if (parameters != null && parameters.length > 0) { @@ -311,7 +311,7 @@ final Object[] parameters, final Class[] parameterTypes) throws RuntimePolicyUtilsException { try { final Method method = target.getClass().getMethod(methodName, parameterTypes); - final Object result = method.invoke(target, parameters); + final Object result = MethodUtil.invoke(target, method,parameters); return resultClass.cast(result); } catch (IllegalArgumentException e) {
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/RuntimePolicyUtilsException.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/RuntimePolicyUtilsException.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/ServiceConfigurationError.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/ServiceConfigurationError.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/ServiceFinder.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/ServiceFinder.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/package-info.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/package-info.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/AssertionData.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/AssertionData.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/CompactModelGenerator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/CompactModelGenerator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/DefaultPolicyAssertionCreator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/DefaultPolicyAssertionCreator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/ModelNode.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/ModelNode.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/NormalizedModelGenerator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/NormalizedModelGenerator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelGenerator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelGenerator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelMarshaller.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelMarshaller.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelTranslator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelTranslator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelUnmarshaller.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelUnmarshaller.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyReferenceData.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyReferenceData.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicySourceModel.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicySourceModel.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicySourceModelContext.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicySourceModelContext.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/XmlPolicyModelMarshaller.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/XmlPolicyModelMarshaller.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/XmlPolicyModelUnmarshaller.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/XmlPolicyModelUnmarshaller.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/ExternalAttachmentsUnmarshaller.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/ExternalAttachmentsUnmarshaller.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/package-info.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/package-info.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/package-info.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/package-info.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/wspolicy/NamespaceVersion.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/wspolicy/NamespaceVersion.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/wspolicy/XmlToken.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/wspolicy/XmlToken.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/AbstractQNameValidator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/AbstractQNameValidator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/AssertionCreationException.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/AssertionCreationException.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PolicyAssertionCreator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PolicyAssertionCreator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PolicyAssertionValidator.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PolicyAssertionValidator.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PrefixMapper.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PrefixMapper.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/package-info.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/package-info.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/PolicyMapKeyConverter.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/PolicyMapKeyConverter.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/WsdlBindingSubject.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/WsdlBindingSubject.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/package-info.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/package-info.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/com/sun/xml/internal/ws/server/AbstractInstanceResolver.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/server/AbstractInstanceResolver.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -157,7 +157,7 @@ if (!method.isAccessible()) { method.setAccessible(true); } - method.invoke(instance,args); + MethodUtil.invoke(instance,method,args); } catch (IllegalAccessException e) { throw new ServerRtException("server.rt.err",e); } catch (InvocationTargetException e) {
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/server/MethodUtil.java Fri Oct 25 11:51:21 2013 +0200 @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package com.sun.xml.internal.ws.server; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.logging.Level; +import java.util.logging.Logger; + +/** + * Utility class to invoke sun.reflect.misc.MethodUtil.invoke() if available. If not (other then Oracle JDK) fallbacks + * to java.lang,reflect.Method.invoke() + * + * Be careful, copy of this class exists in several packages, iny modification must be done to other copies too! + */ +class MethodUtil { + + private static final Logger LOGGER = Logger.getLogger(MethodUtil.class.getName()); + private static final Method INVOKE_METHOD; + + static { + Method method; + try { + Class<?> clazz = Class.forName("sun.reflect.misc.MethodUtil"); + method = clazz.getMethod("invoke", Method.class, Object.class, Object[].class); + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Class sun.reflect.misc.MethodUtil found; it will be used to invoke methods."); + } + } catch (Throwable t) { + method = null; + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Class sun.reflect.misc.MethodUtil not found, probably non-Oracle JVM"); + } + } + INVOKE_METHOD = method; + } + + static Object invoke(Object target, Method method, Object[] args) throws IllegalAccessException, InvocationTargetException { + if (INVOKE_METHOD != null) { + // sun.reflect.misc.MethodUtil.invoke(method, owner, args) + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Invoking method using sun.reflect.misc.MethodUtil"); + } + try { + return INVOKE_METHOD.invoke(null, method, target, args); + } catch (InvocationTargetException ite) { + // unwrap invocation exception added by reflection code ... + throw unwrapException(ite); + } + } else { + // other then Oracle JDK ... + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Invoking method directly, probably non-Oracle JVM"); + } + return method.invoke(target, args); + } + } + + private static InvocationTargetException unwrapException(InvocationTargetException ite) { + Throwable targetException = ite.getTargetException(); + if (targetException != null && targetException instanceof InvocationTargetException) { + if (LOGGER.isLoggable(Level.FINE)) { + LOGGER.log(Level.FINE, "Unwrapping invocation target exception"); + } + return (InvocationTargetException) targetException; + } else { + return ite; + } + } + +}
--- a/src/share/jaxws_classes/javax/xml/soap/AttachmentPart.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/AttachmentPart.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/Detail.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/Detail.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/DetailEntry.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/DetailEntry.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/FactoryFinder.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/FactoryFinder.java Fri Oct 25 11:51:21 2013 +0200 @@ -40,11 +40,12 @@ */ private static Object newInstance(String className, ClassLoader classLoader) - throws SOAPException + throws SOAPException { try { Class spiClass = safeLoadClass(className, classLoader); return spiClass.newInstance(); + } catch (ClassNotFoundException x) { throw new SOAPException("Provider " + className + " not found", x); } catch (Exception x) { @@ -66,7 +67,7 @@ * @exception SOAPException if there is a SOAP error */ static Object find(String factoryId) - throws SOAPException + throws SOAPException { return find(factoryId, null, false); } @@ -92,7 +93,7 @@ * @exception SOAPException if there is a SOAP error */ static Object find(String factoryId, String fallbackClassName) - throws SOAPException + throws SOAPException { return find(factoryId, fallbackClassName, true); } @@ -122,7 +123,7 @@ * @exception SOAPException if there is a SOAP error */ static Object find(String factoryId, String defaultClassName, - boolean tryFallback) throws SOAPException { + boolean tryFallback) throws SOAPException { ClassLoader classLoader; try { classLoader = Thread.currentThread().getContextClassLoader(); @@ -133,7 +134,7 @@ // Use the system property first try { String systemProp = - System.getProperty( factoryId ); + System.getProperty( factoryId ); if( systemProp!=null) { return newInstance(systemProp, classLoader); } @@ -144,7 +145,7 @@ try { String javah=System.getProperty( "java.home" ); String configFile = javah + File.separator + - "lib" + File.separator + "jaxm.properties"; + "lib" + File.separator + "jaxm.properties"; File f=new File( configFile ); if( f.exists()) { Properties props=new Properties(); @@ -167,13 +168,13 @@ if( is!=null ) { BufferedReader rd = - new BufferedReader(new InputStreamReader(is, "UTF-8")); + new BufferedReader(new InputStreamReader(is, "UTF-8")); String factoryClassName = rd.readLine(); rd.close(); if (factoryClassName != null && - ! "".equals(factoryClassName)) { + ! "".equals(factoryClassName)) { return newInstance(factoryClassName, classLoader); } } @@ -188,7 +189,7 @@ // (built in) factory if specified. if (defaultClassName == null) { throw new SOAPException( - "Provider for " + factoryId + " cannot be found", null); + "Provider for " + factoryId + " cannot be found", null); } return newInstance(defaultClassName, classLoader); } @@ -200,7 +201,7 @@ * Class.forName() on it so it will be loaded by the bootstrap class loader. */ private static Class safeLoadClass(String className, - ClassLoader classLoader) + ClassLoader classLoader) throws ClassNotFoundException { try { // make sure that the current thread has an access to the package of the given name. @@ -218,7 +219,7 @@ return classLoader.loadClass(className); } catch (SecurityException se) { // (only) default implementation can be loaded - // using bootstrap class loader ... + // using bootstrap class loader: if (isDefaultImplementation(className)) return Class.forName(className);
--- a/src/share/jaxws_classes/javax/xml/soap/MessageFactory.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/MessageFactory.java Fri Oct 25 11:51:21 2013 +0200 @@ -96,8 +96,9 @@ * @see SAAJMetaFactory */ - public static MessageFactory newInstance() - throws SOAPException { + public static MessageFactory newInstance() throws SOAPException { + + try { MessageFactory factory = (MessageFactory) FactoryFinder.find( MESSAGE_FACTORY_PROPERTY, @@ -107,8 +108,8 @@ if (factory != null) { return factory; } + return newInstance(SOAPConstants.SOAP_1_1_PROTOCOL); - return newInstance(SOAPConstants.SOAP_1_1_PROTOCOL); } catch (Exception ex) { throw new SOAPException( "Unable to create message factory for SOAP: "
--- a/src/share/jaxws_classes/javax/xml/soap/MimeHeader.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/MimeHeader.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/MimeHeaders.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/MimeHeaders.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/Name.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/Name.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/Node.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/Node.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SAAJResult.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SAAJResult.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPBody.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPBody.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPBodyElement.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPBodyElement.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPConnection.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPConnection.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPConstants.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPConstants.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPElement.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPElement.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPElementFactory.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPElementFactory.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPEnvelope.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPEnvelope.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPException.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPException.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPFactory.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPFactory.java Fri Oct 25 11:51:21 2013 +0200 @@ -261,7 +261,8 @@ throws SOAPException { try { - SOAPFactory factory = (SOAPFactory) FactoryFinder.find(SOAP_FACTORY_PROPERTY, DEFAULT_SOAP_FACTORY, false); + SOAPFactory factory = (SOAPFactory) FactoryFinder.find( + SOAP_FACTORY_PROPERTY, DEFAULT_SOAP_FACTORY, false); if (factory != null) return factory; return newInstance(SOAPConstants.SOAP_1_1_PROTOCOL);
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPFault.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPFault.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPFaultElement.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPFaultElement.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPHeader.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPHeader.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPHeaderElement.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPHeaderElement.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPMessage.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPMessage.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/SOAPPart.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/SOAPPart.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it
--- a/src/share/jaxws_classes/javax/xml/soap/Text.java Tue Sep 17 16:33:52 2013 +0200 +++ b/src/share/jaxws_classes/javax/xml/soap/Text.java Fri Oct 25 11:51:21 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it