You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ve...@apache.org on 2012/05/07 19:50:46 UTC
svn commit: r1335154 - in
/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template:
ADBBeanTemplate-bean.xsl ADBBeanTemplate-helpermode.xsl
Author: veithen
Date: Mon May 7 17:50:46 2012
New Revision: 1335154
URL: http://svn.apache.org/viewvc?rev=1335154&view=rev
Log:
Avoid double lookup of prefix when serializing an ADB bean. This change should also provide a workaround for AXIOM-421.
Modified:
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl
Modified: axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl?rev=1335154&r1=1335153&r2=1335154&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl (original)
+++ axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl Mon May 7 17:50:46 2012
@@ -1458,7 +1458,7 @@
javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {
java.lang.String writerPrefix = xmlWriter.getPrefix(namespace);
if (writerPrefix != null) {
- xmlWriter.writeStartElement(namespace, localPart);
+ xmlWriter.writeStartElement(writerPrefix, localPart, namespace);
} else {
if (namespace.length() == 0) {
prefix = "";
@@ -1477,11 +1477,14 @@
*/
private void writeAttribute(java.lang.String prefix,java.lang.String namespace,java.lang.String attName,
java.lang.String attValue,javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException{
- if (xmlWriter.getPrefix(namespace) == null) {
+ java.lang.String writerPrefix = xmlWriter.getPrefix(namespace);
+ if (writerPrefix != null) {
+ xmlWriter.writeAttribute(writerPrefix, namespace,attName,attValue);
+ } else {
xmlWriter.writeNamespace(prefix, namespace);
xmlWriter.setPrefix(prefix, namespace);
+ xmlWriter.writeAttribute(prefix, namespace,attName,attValue);
}
- xmlWriter.writeAttribute(namespace,attName,attValue);
}
/**
@@ -1492,8 +1495,7 @@
if (namespace.equals("")) {
xmlWriter.writeAttribute(attName,attValue);
} else {
- registerPrefix(xmlWriter, namespace);
- xmlWriter.writeAttribute(namespace,attName,attValue);
+ xmlWriter.writeAttribute(registerPrefix(xmlWriter, namespace), namespace,attName,attValue);
}
}
@@ -1520,7 +1522,7 @@
xmlWriter.writeAttribute(attName, attributeValue);
} else {
registerPrefix(xmlWriter, namespace);
- xmlWriter.writeAttribute(namespace, attName, attributeValue);
+ xmlWriter.writeAttribute(attributePrefix, namespace, attName, attributeValue);
}
}
/**
Modified: axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl?rev=1335154&r1=1335153&r2=1335154&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl (original)
+++ axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl Mon May 7 17:50:46 2012
@@ -1051,7 +1051,7 @@ public <xsl:if test="not(@unwrapped) or
javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {
java.lang.String writerPrefix = xmlWriter.getPrefix(namespace);
if (writerPrefix != null) {
- xmlWriter.writeStartElement(namespace, localPart);
+ xmlWriter.writeStartElement(writerPrefix, localPart, namespace);
} else {
if (namespace.length() == 0) {
prefix = "";
@@ -1070,11 +1070,14 @@ public <xsl:if test="not(@unwrapped) or
*/
private void writeAttribute(java.lang.String prefix,java.lang.String namespace,java.lang.String attName,
java.lang.String attValue,javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException{
- if (xmlWriter.getPrefix(namespace) == null) {
+ java.lang.String writerPrefix = xmlWriter.getPrefix(namespace);
+ if (writerPrefix != null) {
+ xmlWriter.writeAttribute(writerPrefix, namespace,attName,attValue);
+ } else {
xmlWriter.writeNamespace(prefix, namespace);
xmlWriter.setPrefix(prefix, namespace);
+ xmlWriter.writeAttribute(prefix, namespace,attName,attValue);
}
- xmlWriter.writeAttribute(namespace,attName,attValue);
}
/**
@@ -1085,8 +1088,7 @@ public <xsl:if test="not(@unwrapped) or
if (namespace.equals("")) {
xmlWriter.writeAttribute(attName,attValue);
} else {
- registerPrefix(xmlWriter, namespace);
- xmlWriter.writeAttribute(namespace,attName,attValue);
+ xmlWriter.writeAttribute(registerPrefix(xmlWriter, namespace), namespace,attName,attValue);
}
}