You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jaxme-dev@ws.apache.org by jo...@apache.org on 2006/09/22 15:21:47 UTC
svn commit: r448918 - in /webservices/jaxme/branches: MAVEN/
MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/
MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/types/ b0_5/
b0_5/src/jaxme/org/apache/ws/jaxme/generator/...
Author: jochen
Date: Fri Sep 22 06:21:46 2006
New Revision: 448918
URL: http://svn.apache.org/viewvc?view=rev&rev=448918
Log:
The ObjectFactory wasn't properly initialized when multiple packages
have been used.
Modified:
webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java
webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/types/StringSG.java
webservices/jaxme/branches/MAVEN/status.xml
webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java
webservices/jaxme/branches/b0_5/status.xml
Modified: webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java?view=diff&rev=448918&r1=448917&r2=448918
==============================================================================
--- webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java (original)
+++ webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java Fri Sep 22 06:21:46 2006
@@ -468,12 +468,6 @@
JavaField jf = js.newJavaField("jaxbContext", JAXBContextImpl.class, "private");
JavaField properties = js.newJavaField("properties", Map.class, "private");
- JavaConstructor jcon = js.newJavaConstructor("public");
- jcon.addThrows(JAXBException.class);
- jcon.addLine(jf, " = (", JAXBContextImpl.class, ") ",
- JAXBContext.class, ".newInstance(",
- JavaSource.getQuoted(pPackageName), ");");
-
JavaMethod newInstanceMethod = js.newJavaMethod("newInstance", Object.class, "public");
newInstanceMethod.addThrows(JAXBException.class);
Parameter pElementInterface = newInstanceMethod.addParam(Class.class, "pElementInterface");
@@ -499,6 +493,8 @@
}
Set contextSet = new HashSet();
+ final Set packageNames = new HashSet();
+ packageNames.add(pPackageName);
for (Iterator iter = pContextList.iterator(); iter.hasNext(); ) {
Object o = iter.next();
TypeSG typeSG;
@@ -506,6 +502,7 @@
ObjectSG objectSG = ((ObjectSG) o);
typeSG = objectSG.getTypeSG();
generateCreateMethod(js, null, objectSG.getClassContext());
+ packageNames.add(objectSG.getClassContext().getXMLInterfaceName().getPackageName());
//NB: we don't have to check for duplicate element names since that would violate the XSD spec
} else if (o instanceof TypeSG) {
typeSG = (TypeSG) o;
@@ -516,6 +513,18 @@
generateCreateMethod(js, contextSet, typeSG, null);
}
+ StringBuffer sb = new StringBuffer();
+ for (Iterator iter = packageNames.iterator(); iter.hasNext(); ) {
+ if (sb.length() > 0) {
+ sb.append(':');
+ }
+ sb.append(iter.next());
+ }
+ JavaConstructor jcon = js.newJavaConstructor("public");
+ jcon.addThrows(JAXBException.class);
+ jcon.addLine(jf, " = (", JAXBContextImpl.class, ") ",
+ JAXBContext.class, ".newInstance(",
+ JavaSource.getQuoted(pPackageName), ");");
return js;
}
Modified: webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/types/StringSG.java
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/types/StringSG.java?view=diff&rev=448918&r1=448917&r2=448918
==============================================================================
--- webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/types/StringSG.java (original)
+++ webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/types/StringSG.java Fri Sep 22 06:21:46 2006
@@ -63,10 +63,6 @@
return new TypedValueImpl(pValue, STRING_TYPE);
}
- public TypedValue getCastToString(SimpleTypeSG pController, Object pValue, DirectAccessible pData) {
- return new TypedValueImpl(pValue, STRING_TYPE);
- }
-
public void forAllNonNullValues(SimpleTypeSG pController, JavaMethod pMethod, Object pValue, SGlet pSGlet) throws SAXException {
LocalJavaField f = pMethod.newJavaField(STRING_TYPE);
f.addLine(pValue);
Modified: webservices/jaxme/branches/MAVEN/status.xml
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/status.xml?view=diff&rev=448918&r1=448917&r2=448918
==============================================================================
--- webservices/jaxme/branches/MAVEN/status.xml (original)
+++ webservices/jaxme/branches/MAVEN/status.xml Fri Sep 22 06:21:46 2006
@@ -81,6 +81,10 @@
<action dev="JW" type="fix" context="generator">
Invalid code was generated for an xs:list with item type xs:QName.
</action>
+ <action dev="JW" type="fix" context="generator">
+ The object factory wasn't properly initialized, if a schema was using
+ multiple package names.
+ </action>
</release>
<release version="0.5.1" date="Not yet published">
<action dev="JW" type="enhancement" context="js">
Modified: webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java?view=diff&rev=448918&r1=448917&r2=448918
==============================================================================
--- webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java (original)
+++ webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSchemaSG.java Fri Sep 22 06:21:46 2006
@@ -462,12 +462,6 @@
JavaField jf = js.newJavaField("jaxbContext", JAXBContextImpl.class, "private");
JavaField properties = js.newJavaField("properties", Map.class, "private");
- JavaConstructor jcon = js.newJavaConstructor("public");
- jcon.addThrows(JAXBException.class);
- jcon.addLine(jf, " = (", JAXBContextImpl.class, ") ",
- JAXBContext.class, ".newInstance(",
- JavaSource.getQuoted(pPackageName), ");");
-
JavaMethod newInstanceMethod = js.newJavaMethod("newInstance", Object.class, "public");
newInstanceMethod.addThrows(JAXBException.class);
Parameter pElementInterface = newInstanceMethod.addParam(Class.class, "pElementInterface");
@@ -493,6 +487,8 @@
}
Set contextSet = new HashSet();
+ final Set packageNames = new HashSet();
+ packageNames.add(pPackageName);
for (Iterator iter = pContextList.iterator(); iter.hasNext(); ) {
Object o = iter.next();
TypeSG typeSG;
@@ -501,6 +497,7 @@
typeSG = objectSG.getTypeSG();
generateCreateMethod(js, null, objectSG.getClassContext());
//NB: we don't have to check for duplicate element names since that would violate the XSD spec
+ packageNames.add(objectSG.getClassContext().getXMLInterfaceName().getPackageName());
} else if (o instanceof TypeSG) {
typeSG = (TypeSG) o;
} else {
@@ -508,8 +505,21 @@
}
generateCreateMethod(js, contextSet, typeSG, null);
+
}
+ StringBuffer sb = new StringBuffer();
+ for (Iterator iter = packageNames.iterator(); iter.hasNext(); ) {
+ if (sb.length() > 0) {
+ sb.append(':');
+ }
+ sb.append(iter.next());
+ }
+ JavaConstructor jcon = js.newJavaConstructor("public");
+ jcon.addThrows(JAXBException.class);
+ jcon.addLine(jf, " = (", JAXBContextImpl.class, ") ",
+ JAXBContext.class, ".newInstance(",
+ JavaSource.getQuoted(sb.toString()), ");");
return js;
}
Modified: webservices/jaxme/branches/b0_5/status.xml
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/status.xml?view=diff&rev=448918&r1=448917&r2=448918
==============================================================================
--- webservices/jaxme/branches/b0_5/status.xml (original)
+++ webservices/jaxme/branches/b0_5/status.xml Fri Sep 22 06:21:46 2006
@@ -77,6 +77,10 @@
<action dev="JW" type="fix" context="generator">
Invalid code was generated for an xs:list with item type xs:QName.
</action>
+ <action dev="JW" type="fix" context="generator">
+ The object factory wasn't properly initialized, if a schema was using
+ multiple package names.
+ </action>
</release>
<release version="0.5.1" date="06-Jan-2006">
<action dev="JW" type="enhancement" context="js">
---------------------------------------------------------------------
To unsubscribe, e-mail: jaxme-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: jaxme-dev-help@ws.apache.org