Mercurial > hg > icedtea7-forest > jaxws
changeset 902:7bafb24c6466 jdk7u65-b05
8026188: Enhance envelope factory
Summary: Avoiding caching data initialized via TCCL in static context; fix also reviewed by Iaroslav Savytskyi, Alexander Fomin
Reviewed-by: kshefov
author | mkos |
---|---|
date | Tue, 25 Mar 2014 17:10:34 +0100 |
parents | 82d48f4b6d63 |
children | ef24208015fd |
files | src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/JAXBContextImpl.java |
diffstat | 1 files changed, 3 insertions(+), 23 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/JAXBContextImpl.java Thu Mar 20 15:01:10 2014 -0700 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/JAXBContextImpl.java Tue Mar 25 17:10:34 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2014, 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 @@ -130,14 +130,6 @@ private final Map<TypeReference,Bridge> bridges = new LinkedHashMap<TypeReference,Bridge>(); /** - * Shared instance of {@link TransformerFactory}. - * Lock before use, because a {@link TransformerFactory} is not thread-safe - * whereas {@link JAXBContextImpl} is. - * Lazily created. - */ - private volatile static SAXTransformerFactory tf; - - /** * Shared instance of {@link DocumentBuilder}. * Lock before use. Lazily created. */ @@ -702,13 +694,7 @@ */ static Transformer createTransformer() { try { - if (tf==null) { - synchronized(JAXBContextImpl.class) { - if (tf==null) { - tf = (SAXTransformerFactory)TransformerFactory.newInstance(); - } - } - } + SAXTransformerFactory tf = (SAXTransformerFactory)TransformerFactory.newInstance(); return tf.newTransformer(); } catch (TransformerConfigurationException e) { throw new Error(e); // impossible @@ -720,13 +706,7 @@ */ public static TransformerHandler createTransformerHandler() { try { - if (tf==null) { - synchronized(JAXBContextImpl.class) { - if (tf==null) { - tf = (SAXTransformerFactory)TransformerFactory.newInstance(); - } - } - } + SAXTransformerFactory tf = (SAXTransformerFactory)TransformerFactory.newInstance(); return tf.newTransformerHandler(); } catch (TransformerConfigurationException e) { throw new Error(e); // impossible