You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by dj...@apache.org on 2006/12/13 03:03:52 UTC
svn commit: r486453 -
/geronimo/server/trunk/applications/console/geronimo-console-standard/src/main/java/org/apache/geronimo/console/securitymanager/realm/SecurityRealmPortlet.java
Author: djencks
Date: Tue Dec 12 18:03:51 2006
New Revision: 486453
URL: http://svn.apache.org/viewvc?view=rev&rev=486453
Log:
GERONIMO-2560 Fix qname for substitution group for inserted gbean type
Modified:
geronimo/server/trunk/applications/console/geronimo-console-standard/src/main/java/org/apache/geronimo/console/securitymanager/realm/SecurityRealmPortlet.java
Modified: geronimo/server/trunk/applications/console/geronimo-console-standard/src/main/java/org/apache/geronimo/console/securitymanager/realm/SecurityRealmPortlet.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/applications/console/geronimo-console-standard/src/main/java/org/apache/geronimo/console/securitymanager/realm/SecurityRealmPortlet.java?view=diff&rev=486453&r1=486452&r2=486453
==============================================================================
--- geronimo/server/trunk/applications/console/geronimo-console-standard/src/main/java/org/apache/geronimo/console/securitymanager/realm/SecurityRealmPortlet.java (original)
+++ geronimo/server/trunk/applications/console/geronimo-console-standard/src/main/java/org/apache/geronimo/console/securitymanager/realm/SecurityRealmPortlet.java Tue Dec 12 18:03:51 2006
@@ -30,6 +30,7 @@
import org.apache.geronimo.deployment.xbeans.ReferenceType;
import org.apache.geronimo.deployment.xbeans.XmlAttributeType;
import org.apache.geronimo.deployment.xbeans.AbstractServiceType;
+import org.apache.geronimo.deployment.xbeans.ServiceDocument;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.KernelRegistry;
@@ -78,6 +79,7 @@
import javax.security.auth.spi.LoginModule;
import javax.management.ObjectName;
import javax.management.MalformedObjectNameException;
+import javax.xml.namespace.QName;
import java.io.BufferedReader;
import java.io.File;
@@ -146,6 +148,7 @@
private PortletRequestDispatcher testResultsView;
private PortletRequestDispatcher planView;
private PortletRequestDispatcher usageView;
+ private static final QName GBEAN_QNAME = new QName(ServiceDocument.type.getDocumentElementName().getNamespaceURI(), "gbean");
public void init(PortletConfig portletConfig) throws PortletException {
super.init(portletConfig);
@@ -449,6 +452,19 @@
destination.dispose();
config.setName("LoginModuleConfiguration");
root.setServiceArray(new AbstractServiceType[]{realm});
+
+
+ //Above code inserts gbean using xsi:type=dep:GBeanType. We also need to account for the substitution group
+ //by changing the qname:
+ XmlCursor gbeanCursor = root.newCursor();
+ try {
+ if (!gbeanCursor.toChild(ServiceDocument.type.getDocumentElementName())) {
+ throw new RuntimeException("Could not find service element");
+ }
+ gbeanCursor.setName(GBEAN_QNAME);
+ } finally {
+ gbeanCursor.dispose();
+ }
return doc;
}