📄 saveserviceaction.java
字号:
}
}
oname = new ObjectName(engineName + TomcatTreeBuilder.ENGINE_TYPE);
if (mBServer.isRegistered(oname)) {
ActionErrors errors = new ActionErrors();
errors.add("serviceName",
new ActionError("error.engineName.exists"));
saveErrors(request, errors);
return (new ActionForward(mapping.getInput()));
}
// Look up our MBeanFactory MBean
ObjectName fname = TomcatTreeBuilder.getMBeanFactory();
// Create a new StandardService and StandardEngine object
values = new String[4];
values[0] = TomcatTreeBuilder.SERVER_TYPE;
values[1] = engineName;
values[2] = sform.getDefaultHost();
values[3] = sform.getServiceName();
operation = "createStandardEngineService";
Vector onames = (Vector)
mBServer.invoke(fname, operation,
values, createStandardEngineServiceTypes);
eoname = (ObjectName)onames.get(0);
soname = (ObjectName)onames.get(1);
sObjectName = soname.toString();
eObjectName = eoname.toString();
String realmOName = ValveUtil.getObjectName(
eObjectName, TomcatTreeBuilder.REALM_TYPE);
ObjectName roname = new ObjectName(realmOName);
if (mBServer.isRegistered(roname)) {
mBServer.unregisterMBean(roname);
}
// Create a new UserDatabaseRealm object
values = new String[2];
values[0] = eObjectName;
values[1] = "UserDatabase";
operation = "createUserDatabaseRealm";
//realmOName = (String)
// mBServer.invoke(fname, operation,
// values, createUserDatabaseRealmTypes);
//Enumeration enum = onames.elements();
//while (enum.hasMoreElements()) {
// getServlet().log("save service "+enum.nextElement());
//}
sObjectName = soname.toString();
eObjectName = eoname.toString();
// Create a new StandardService object
//values = new String[3];
//values[0] = TomcatTreeBuilder.SERVER_TYPE;
//values[1] = sform.getServiceName();
//values[2] = engineName;
//operation = "createStandardService";
//sObjectName = (String)
// mBServer.invoke(fname, operation,
// values, createStandardServiceTypes);
// Create a new StandardEngine object
//values = new String[3];
//values[0] = sObjectName;
//values[1] = sform.getEngineName();
//values[2] = sform.getDefaultHost();
//if ("".equals(values[2])) {
// values[2] = null;
//}
//operation = "createStandardEngine";
//eObjectName = (String)
// mBServer.invoke(fname, operation,
// values, createStandardEngineTypes);
// Add the new Service to our tree control node
TreeControl control = (TreeControl)
session.getAttribute("treeControlTest");
if (control != null) {
String parentName = TomcatTreeBuilder.DEFAULT_DOMAIN +
TomcatTreeBuilder.SERVER_TYPE;
TreeControlNode parentNode = control.findNode(parentName);
if (parentNode != null) {
String nodeLabel = resources.getMessage(locale,
"server.service.treeBuilder.subtreeNode") +" (" +
soname.getKeyProperty("serviceName") + ")";
String encodedName =
URLEncoder.encode(sObjectName,TomcatTreeBuilder.URL_ENCODING);
TreeControlNode childNode =
new TreeControlNode(sObjectName,
"Service.gif",
nodeLabel,
"EditService.do?select=" +
encodedName,
"content",
true, engineName);
parentNode.addChild(childNode);
// update tree to display the newly added realm
//Iterator realmNames =
// Lists.getRealms(mBServer, sObjectName).iterator();
//while (realmNames.hasNext()) {
// String realmName = (String) realmNames.next();
// ObjectName objectName = new ObjectName(realmName);
// nodeLabel = "Realm for service (" +
// sform.getServiceName() + ")";
// TreeControlNode realmNode =
// new TreeControlNode(realmName,
// "Realm.gif",
// nodeLabel,
// "EditRealm.do?select=" +
// URLEncoder.encode(realmName) +
// "&nodeLabel=" +
// URLEncoder.encode(nodeLabel),
// "content",
// false, engineName);
// childNode.addChild(realmNode);
//}
// FIXME - force a redisplay
} else {
getServlet().log
("Cannot find parent node '" + parentName + "'");
}
} else {
getServlet().log
("Cannot find TreeControlNode!");
}
} catch (Exception e) {
getServlet().log
(resources.getMessage(locale, "users.error.invoke",
operation), e);
response.sendError
(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
resources.getMessage(locale, "users.error.invoke",
operation));
return (null);
}
}
// Perform attribute updates as requested
String attribute = null;
try {
eoname = new ObjectName(eObjectName);
soname = new ObjectName(sObjectName);
attribute = "defaultHost";
String defaultHost = sform.getDefaultHost();
if ("".equals(defaultHost)) {
defaultHost = null;
}
mBServer.setAttribute(eoname,
new Attribute("defaultHost", defaultHost));
} catch (Exception e) {
getServlet().log
(resources.getMessage(locale, "users.error.attribute.set",
attribute), e);
response.sendError
(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
resources.getMessage(locale, "users.error.attribute.set",
attribute));
return (null);
}
// Forward to the success reporting page
session.removeAttribute(mapping.getAttribute());
return (mapping.findForward("Save Successful"));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -