Repository: juddi Updated Branches: refs/heads/master 09abb1b4e -> 5eda4a714
JUDDI-926 fixed Project: http://git-wip-us.apache.org/repos/asf/juddi/repo Commit: http://git-wip-us.apache.org/repos/asf/juddi/commit/5eda4a71 Tree: http://git-wip-us.apache.org/repos/asf/juddi/tree/5eda4a71 Diff: http://git-wip-us.apache.org/repos/asf/juddi/diff/5eda4a71 Branch: refs/heads/master Commit: 5eda4a714c86584b24576a51a9995d72240fa55c Parents: 09abb1b Author: Alex <[email protected]> Authored: Mon Feb 2 22:14:13 2015 -0500 Committer: Alex <[email protected]> Committed: Mon Feb 2 22:14:13 2015 -0500 ---------------------------------------------------------------------- .../juddi/v3/client/config/ClientConfig.java | 14 +- .../apache/juddi/webconsole/hub/UddiHub.java | 4 +- juddi-gui/src/main/resources/META-INF/uddi.xml | 21 +- .../juddi/webconsole/resources/web.properties | 1 + .../webconsole/resources/web_es.properties | 1 + juddi-gui/src/main/webapp/ajax/settings.jsp | 177 ++++-- juddi-gui/src/main/webapp/settings.jsp | 537 ++++++++++++++----- 7 files changed, 564 insertions(+), 191 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/juddi/blob/5eda4a71/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java ---------------------------------------------------------------------- diff --git a/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java b/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java index 10a63be..db8c970 100644 --- a/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java +++ b/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java @@ -460,6 +460,12 @@ public class ClientConfig { throw new ConfigurationException("One of the node elements in the client configuration needs to a 'isHomeJUDDI=\"true\"' attribute."); } + /** + * returns the named uddi node from config or throws if one is not found + * @param nodeName + * @return + * @throws ConfigurationException + */ public UDDINode getUDDINode(String nodeName) throws ConfigurationException { if (!uddiNodes.containsKey(nodeName)) { throw new ConfigurationException("Node '" + nodeName @@ -578,7 +584,8 @@ public class ClientConfig { * adds a new node to the client configuration section. Don't forget to * call save to persist the changes * - * @param n + * @param node + * @throws org.apache.commons.configuration.ConfigurationException * @since 3.3 */ public void addUDDINode(UDDINode node) throws ConfigurationException { @@ -592,7 +599,10 @@ public class ClientConfig { log.info("ClientName wasn't specified, I'll configure it with the defaults"); node.setClientName(this.clientName); } - this.uddiNodes.put(node.getClientName(), node); + if (node.getName() == null || "".equalsIgnoreCase(node.getName())) { + throw new ConfigurationException("Node Name wasn't specified. It cannot be null"); + } + this.uddiNodes.put(node.getName(), node); } http://git-wip-us.apache.org/repos/asf/juddi/blob/5eda4a71/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java ---------------------------------------------------------------------- diff --git a/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java b/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java index 261968b..c76a7d1 100644 --- a/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java +++ b/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java @@ -420,7 +420,7 @@ public class UddiHub implements Serializable { /** * gets a reference to the current juddi client config file. this is a - * live instance changes can be stored to disk, usually + * live instance changes can be stored to disk * * @return client config * @throws ConfigurationException g @@ -449,7 +449,7 @@ public class UddiHub implements Serializable { return true; } } - } catch (ConfigurationException ex) { + } catch (Exception ex) { log.error(ex); return false; } http://git-wip-us.apache.org/repos/asf/juddi/blob/5eda4a71/juddi-gui/src/main/resources/META-INF/uddi.xml ---------------------------------------------------------------------- diff --git a/juddi-gui/src/main/resources/META-INF/uddi.xml b/juddi-gui/src/main/resources/META-INF/uddi.xml index a3f6262..7d66c29 100644 --- a/juddi-gui/src/main/resources/META-INF/uddi.xml +++ b/juddi-gui/src/main/resources/META-INF/uddi.xml @@ -87,15 +87,26 @@ It currently does not use the ValueSet, jUDDI, Replication, or REST APIs <subscriptionUrl>https://localhost:8443/juddiv3/UDDISubscriptionService</subscriptionUrl> </node> <node> + <name>jUDDI Cloud Prod</name> + <description>This node is a semi-production jUDDI instance.</description> + <!-- JAX-WS Transport --> + <proxyTransport>org.apache.juddi.v3.client.transport.JAXWSTransport</proxyTransport> + <custodyTransferUrl>http://uddi-jbossoverlord.rhcloud.com/juddiv3/services/custody-transfer</custodyTransferUrl> + <inquiryUrl>http://uddi-jbossoverlord.rhcloud.com/juddiv3/services/inquiry</inquiryUrl> + <publishUrl>http://uddi-jbossoverlord.rhcloud.com/juddiv3/services/publish</publishUrl> + <securityUrl>http://uddi-jbossoverlord.rhcloud.com/juddiv3/services/security</securityUrl> + <subscriptionUrl>http://uddi-jbossoverlord.rhcloud.com/juddiv3/services/subscription</subscriptionUrl> + </node> + <node> <name>jUDDI Cloud Sandbox</name> <description>This node is maintained by the jUDDI team for you to test and experiment with.</description> <!-- JAX-WS Transport --> <proxyTransport>org.apache.juddi.v3.client.transport.JAXWSTransport</proxyTransport> - <custodyTransferUrl>http://uddi-jbossoverlord.rhcloud.com/services/custody-transfer</custodyTransferUrl> - <inquiryUrl>http://uddi-jbossoverlord.rhcloud.com/services/inquiry</inquiryUrl> - <publishUrl>http://uddi-jbossoverlord.rhcloud.com/services/publish</publishUrl> - <securityUrl>http://uddi-jbossoverlord.rhcloud.com/services/security</securityUrl> - <subscriptionUrl>http://uddi-jbossoverlord.rhcloud.com/services/subscription</subscriptionUrl> + <custodyTransferUrl>http://uddiconsole-jbossoverlord.rhcloud.com/juddiv3/services/custody-transfer</custodyTransferUrl> + <inquiryUrl>http://uddiconsole-jbossoverlord.rhcloud.com/juddiv3/services/inquiry</inquiryUrl> + <publishUrl>http://uddiconsole-jbossoverlord.rhcloud.com/juddiv3/services/publish</publishUrl> + <securityUrl>http://uddiconsole-jbossoverlord.rhcloud.com/juddiv3/services/security</securityUrl> + <subscriptionUrl>http://uddiconsole-jbossoverlord.rhcloud.com/juddiv3/services/subscription</subscriptionUrl> </node> </nodes> <signature> http://git-wip-us.apache.org/repos/asf/juddi/blob/5eda4a71/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties ---------------------------------------------------------------------- diff --git a/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties b/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties index 38367e0..c834934 100644 --- a/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties +++ b/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties @@ -450,3 +450,4 @@ actions.popout=Popout items.categorizations=Categorizations items.categorizations.uddi=UDDI Categorizations actions.return=Return +items.settings.edit=Edit http://git-wip-us.apache.org/repos/asf/juddi/blob/5eda4a71/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties ---------------------------------------------------------------------- diff --git a/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties b/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties index 3b5d064..d316427 100644 --- a/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties +++ b/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties @@ -452,3 +452,4 @@ actions.popout=Salir items.categorizations=Categorizaciones items.categorizations.uddi=UDDI Categorizaciones actions.return=Volver +items.settings.edit=Editar http://git-wip-us.apache.org/repos/asf/juddi/blob/5eda4a71/juddi-gui/src/main/webapp/ajax/settings.jsp ---------------------------------------------------------------------- diff --git a/juddi-gui/src/main/webapp/ajax/settings.jsp b/juddi-gui/src/main/webapp/ajax/settings.jsp index 46aec41..31df17b 100644 --- a/juddi-gui/src/main/webapp/ajax/settings.jsp +++ b/juddi-gui/src/main/webapp/ajax/settings.jsp @@ -19,6 +19,8 @@ */ --%> +<%@page import="org.apache.commons.lang.StringEscapeUtils"%> +<%@page import="org.apache.juddi.v3.client.config.UDDINode"%> <%@page import="org.apache.juddi.webconsole.resources.ResourceLoader"%> <%@page import="java.io.File"%> <%@page import="java.io.FileOutputStream"%> @@ -26,52 +28,137 @@ <%@page import="java.util.Enumeration"%> <%@page contentType="text/html" pageEncoding="UTF-8"%> <%@include file="../csrf.jsp" %> -<% - UddiHub x = UddiHub.getInstance(application, session); - if (x.isAdminLocalhostOnly() && - !request.getRemoteAddr().equalsIgnoreCase("localhost") && - !request.getRemoteHost().equalsIgnoreCase("127.0.0.1") && - !request.getRemoteHost().equalsIgnoreCase("0:0:0:0:0:0:0:1")) { - out.write(ResourceLoader.GetResource(session, "pages.settings.accessdenied.remote")); - UddiHub.log.fatal("Audit: FAILURE Attempt to alter configuration remotely from " + - request.getRemoteAddr() + " " + - request.getRemoteHost() + " " + - request.getRemoteUser()); - response.setStatus(403); - return; - } else { - - - //this is controlled by web.xml +<% UddiHub x = UddiHub.getInstance(application, session); + if (x.isAdminLocalhostOnly() + && !request.getRemoteAddr().equalsIgnoreCase("localhost") + && !request.getRemoteHost().equalsIgnoreCase("127.0.0.1") + && !request.getRemoteHost().equalsIgnoreCase("0:0:0:0:0:0:0:1")) { + out.write(ResourceLoader.GetResource(session, "pages.settings.accessdenied.remote")); + UddiHub.log.fatal("Audit: FAILURE Attempt to alter configuration remotely from " + + request.getRemoteAddr() + " " + + request.getRemoteHost() + " " + + request.getRemoteUser()); + response.setStatus(403); + return; + } else { + + //this is controlled by web.xml /*if (!request.isUserInRole("uddiadmin")) { - out.write("Sorry, you need to have the 'uddiadmin' admin role to access this page."); - response.setStatus(403); - }*/ - if (request.getMethod().equalsIgnoreCase("post")) { - UddiHub.log.info("Audit: SUCCESS Altering juddi config " + - request.getRemoteAddr() + " " + - request.getRemoteHost() + " " + - request.getRemoteUser()); - - Enumeration it = request.getParameterNames(); - while (it.hasMoreElements()) { - String key = (String) it.nextElement(); - String value = request.getParameter(key); - if (key.startsWith("client.") || key.startsWith("config.")) { - //its part of the juddi client config file - x.GetJuddiClientConfig().getConfiguration().setProperty(key, value); - //this just sets the runtime config + out.write("Sorry, you need to have the 'uddiadmin' admin role to access this page."); + response.setStatus(403); + }*/ + if (request.getMethod().equalsIgnoreCase("post")) { + UddiHub.log.info("Audit: SUCCESS Altering juddi config " + + request.getRemoteAddr() + " " + + request.getRemoteHost() + " " + + request.getRemoteUser()); + try { + String formaction = request.getParameter("formaction"); + if (formaction == null) { + response.setStatus(400); + return; + } + if ("settings".equalsIgnoreCase(formaction)) { + Enumeration it = request.getParameterNames(); + while (it.hasMoreElements()) { + String key = (String) it.nextElement(); + String value = request.getParameter(key); + if (key.startsWith("client.") || key.startsWith("config.")) { + if (!key.startsWith("client.nodes.")) { + //its part of the juddi client config file + x.GetJuddiClientConfig().getConfiguration().setProperty(key, value); + //this just sets the runtime config + // System.out.println(key + " = " + value); + } + + } + } + } else if ("deleteNode".equalsIgnoreCase(formaction)) { + String nn = request.getParameter("nodename"); + UDDINode un = x.GetJuddiClientConfig().getUDDINode(nn); + x.GetJuddiClientConfig().removeUDDINode(nn); + UddiHub.log.info("Deleting node config for " + nn); + + } else if ("newNode".equalsIgnoreCase(formaction)) { + UddiHub.log.info("New node config"); + UDDINode un = new UDDINode(); + un.setName(request.getParameter("nodename")); + + un.setClientName(x.GetJuddiClientConfig().getClientName()); + un.setInquiryUrl(request.getParameter("inquiry")); + un.setProxyTransport(request.getParameter("transport")); + un.setPublishUrl(request.getParameter("publish")); + un.setDescription(request.getParameter("description")); + un.setCustodyTransferUrl(request.getParameter("custody")); + un.setSubscriptionUrl(request.getParameter("subscription")); + un.setSecurityUrl(request.getParameter("security")); + + un.setFactoryInitial(request.getParameter("factoryinit")); + un.setFactoryNamingProvider(request.getParameter("factorynaming")); + un.setFactoryURLPkgs(request.getParameter("factoryurl")); + un.setInquiryRESTUrl(request.getParameter("inquiryrest")); + un.setReplicationUrl(request.getParameter("replication")); + un.setJuddiApiUrl(request.getParameter("juddiapi")); + x.GetJuddiClientConfig().addUDDINode(un); + + } else if ("alterNode".equalsIgnoreCase(formaction)) { + + String nn = request.getParameter("nodenameAlter"); + UDDINode un = x.GetJuddiClientConfig().getUDDINode(nn); + UddiHub.log.info("Altering node config for " + nn); + un.setInquiryUrl(request.getParameter("inquiryAlter")); + un.setProxyTransport(request.getParameter("transportAlter")); + un.setPublishUrl(request.getParameter("publishAlter")); + un.setDescription(request.getParameter("descriptionAlter")); + un.setCustodyTransferUrl(request.getParameter("custodyAlter")); + un.setSubscriptionUrl(request.getParameter("subscriptionAlter")); + un.setSecurityUrl(request.getParameter("securityAlter")); + + un.setFactoryInitial(request.getParameter("factoryinitAlter")); + un.setFactoryNamingProvider(request.getParameter("factorynamingAlter")); + un.setFactoryURLPkgs(request.getParameter("factoryurlAlter")); + un.setInquiryRESTUrl(request.getParameter("inquiryrestAlter")); + un.setReplicationUrl(request.getParameter("replicationAlter")); + un.setJuddiApiUrl(request.getParameter("juddiapiAlter")); + x.GetJuddiClientConfig().removeUDDINode(nn); + x.GetJuddiClientConfig().addUDDINode(un); + + } else if ("getNode".equalsIgnoreCase(formaction)) { + String nn = request.getParameter("nodename"); + UDDINode un = x.GetJuddiClientConfig().getUDDINode(nn); + UddiHub.log.info("Get node config for " + nn); + out.write("<table class=\"table table-hover\">"); + out.write("<tr><td>Node Name</td><td><input class=\"crudnodeAlter\" type=text id=\"nodenameAlter\" value=\"" + StringEscapeUtils.escapeHtml(un.getName()) + "\"></td></tr>"); + + out.write("<tr><td>Description</td><td><input class=\"crudnodeAlter\" type=text id=\"descriptionAlter\" value=\"" + (un.getDescription() != null ? StringEscapeUtils.escapeHtml(un.getDescription()) : "") + "\"></td></tr>"); + out.write("<tr><td>Transport</td><td><input class=\"crudnodeAlter\" type=text id=\"transportAlter\" value=\"" + (un.getProxyTransport() != null ? StringEscapeUtils.escapeHtml(un.getProxyTransport()) : "") + "\"></td></tr>"); + out.write("<tr><td>Inquiry</td><td><input class=\"crudnodeAlter\" type=text id=\"inquiryAlter\" value=\"" + (un.getInquiryUrl() != null ? StringEscapeUtils.escapeHtml(un.getInquiryUrl()) : "") + "\"></td></tr>"); + out.write("<tr><td>Publish</td><td><input class=\"crudnodeAlter\" type=text id=\"publishAlter\" value=\"" + (un.getPublishUrl() != null ? StringEscapeUtils.escapeHtml(un.getPublishUrl()) : "") + "\"></td></tr>"); + out.write("<tr><td>Security</td><td><input class=\"crudnodeAlter\" type=text id=\"securityAlter\" value=\"" + (un.getSecurityUrl() != null ? StringEscapeUtils.escapeHtml(un.getSecurityUrl()) : "") + "\"></td></tr>"); + out.write("<tr><td>Custody Transfer</td><td><input class=\"crudnodeAlter\" type=text id=\"custodyAlter\" value=\"" + (un.getCustodyTransferUrl() != null ? StringEscapeUtils.escapeHtml(un.getCustodyTransferUrl()) : "") + "\"></td></tr>"); + out.write("<tr><td>Subscription</td><td><input class=\"crudnodeAlter\" type=text id=\"subscriptionAlter\" value=\"" + (un.getSubscriptionUrl() != null ? StringEscapeUtils.escapeHtml(un.getSubscriptionUrl()) : "") + "\"></td></tr>"); + out.write("<tr><td colspan=2>Not used by juddi-gui</td></tr>"); + out.write("<tr><td>Factory Initial</td><td><input type=text class=\"crudnodeAlter\" id=\"factoryinitAlter\" value=\"" + (un.getFactoryInitial() != null ? StringEscapeUtils.escapeHtml(un.getFactoryInitial()) : "") + "\"></td></tr>"); + out.write("<tr><td>Factory Naming Provider</td><td><input class=\"crudnodeAlter\" type=text id=\"factorynamingAlter\" value=\"" + (un.getFactoryNamingProvider() != null ? StringEscapeUtils.escapeHtml(un.getFactoryNamingProvider()) : "") + "\"></td></tr>"); + out.write("<tr><td>Factor URL Package</td><td><input class=\"crudnodeAlter\" type=text id=\"factoryurlAlter\" value=\"" + (un.getFactoryURLPkgs() != null ? StringEscapeUtils.escapeHtml(un.getFactoryURLPkgs()) : "") + "\"></td></tr>"); + out.write("<tr><td>Inquiry REST</td><td><input class=\"crudnodeAlter\" type=text id=\"inquiryrestAlter\" value=\"" + (un.getInquiry_REST_Url() != null ? StringEscapeUtils.escapeHtml(un.getInquiry_REST_Url()) : "") + "\"></td></tr>"); + out.write("<tr><td>Replication</td><td><input class=\"crudnodeAlter\" type=text id=\"replicationAlter\" value=\"" + (un.getReplicationUrl() != null ? StringEscapeUtils.escapeHtml(un.getReplicationUrl()) : "") + "\"></td></tr>"); + out.write("<tr><td>jUDDI API</td><td><input class=\"crudnodeAlter\" type=text id=\"juddiapiAlter\" value=\"" + (un.getJuddiApiUrl() != null ? StringEscapeUtils.escapeHtml(un.getJuddiApiUrl()) : "") + "\"></td></tr>"); + out.write("</table>"); + return; + + } else { + response.setStatus(400); + return; + } + + x.GetJuddiClientConfig().saveConfig(); + out.write(ResourceLoader.GetResource(session, "actions.saved")); + } catch (Exception ex) { + response.setStatus(406); - } - } - try { - x.GetJuddiClientConfig().saveConfigRaw(); - out.write(ResourceLoader.GetResource(session, "actions.saved")); - } catch (Exception ex) { - response.setStatus(406); - - out.write(x.HandleException(ex)); - } + out.write(x.HandleException(ex)); + } + } } - } %> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/juddi/blob/5eda4a71/juddi-gui/src/main/webapp/settings.jsp ---------------------------------------------------------------------- diff --git a/juddi-gui/src/main/webapp/settings.jsp b/juddi-gui/src/main/webapp/settings.jsp index d582f92..3ff82fd 100644 --- a/juddi-gui/src/main/webapp/settings.jsp +++ b/juddi-gui/src/main/webapp/settings.jsp @@ -19,6 +19,7 @@ */ --%> +<%@page import="org.apache.juddi.v3.client.config.UDDINode"%> <%@page import="org.apache.juddi.v3.client.config.ClientConfig"%> <%@page import="org.apache.commons.configuration.Configuration"%> <%@page import="java.util.Iterator"%> @@ -40,7 +41,7 @@ <h2><%=ResourceLoader.GetResource(session, "navbar.settings")%></h2> <p><%=ResourceLoader.GetResource(session, "items.settings.description")%></p> <% - UddiHub x = UddiHub.getInstance(application, session); + UddiHub x = UddiHub.getInstance(application, session); %> @@ -51,117 +52,132 @@ <tr><th><%=ResourceLoader.GetResource(session, "items.key")%></th> <th><%=ResourceLoader.GetResource(session, "items.value")%></th></tr> <% - try { - ClientConfig cfg = x.GetJuddiClientConfig(); - Configuration cfg2 = cfg.getConfiguration(); - Iterator<String> it2 = cfg.getConfiguration().getKeys(); - - String[] nodes2 = cfg2.getStringArray("client.nodes.node.name"); - - while (it2.hasNext()) { - - String key = it2.next(); - - String value = cfg.getConfiguration().getString(key); - if ((key.startsWith("client") || (key.startsWith("config.props"))) && !key.startsWith("client.nodes.node")) { - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - if ((key.startsWith("client") && !key.startsWith("client.nodes")) || key.startsWith("config.props")) { - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\""); + try { + ClientConfig cfg = x.GetJuddiClientConfig(); + Configuration cfg2 = cfg.getConfiguration(); + Iterator<String> it2 = cfg.getConfiguration().getKeys(); + + String[] nodes2 = cfg2.getStringArray("client.nodes.node.name"); + + while (it2.hasNext()) { + + String key = it2.next(); + + String value = cfg.getConfiguration().getString(key); + if ((key.startsWith("client") || (key.startsWith("config.props"))) && !key.startsWith("client.nodes.node")) { + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + if ((key.startsWith("client") && !key.startsWith("client.nodes")) || key.startsWith("config.props")) { + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\""); + } + out.write(">"); + out.write(StringEscapeUtils.escapeHtml(value)); + out.write("</div></td></tr>"); + } } - out.write(">"); - out.write(StringEscapeUtils.escapeHtml(value)); - out.write("</div></td></tr>"); - } - } + %> + </table><br> + <a class="btn btn-primary" href="javascript:newItem();"><i class="icon-large icon-plus-sign"></i> <%=ResourceLoader.GetResource(session, "actions.add")%></a> + <a class="btn btn-primary " href="javascript:saveSettings();"><i class="icon-large icon-save"></i> <%=ResourceLoader.GetResource(session, "actions.save")%></a> - for (int i = 0; i < nodes2.length; i++) { - - String key = "client.nodes.node(" + i + ").name"; - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); - out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); - out.write("</div></td></tr>"); - - key = "client.nodes.node(" + i + ").description"; - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); - out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); - out.write("</div></td></tr>"); - - key = "client.nodes.node(" + i + ").proxyTransport"; - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); - out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); - out.write("</div></td></tr>"); - - key = "client.nodes.node(" + i + ").custodyTransferUrl"; - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); - out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); - out.write("</div></td></tr>"); - - key = "client.nodes.node(" + i + ").inquiryUrl"; - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); - out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); - out.write("</div></td></tr>"); - - key = "client.nodes.node(" + i + ").publishUrl"; - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); - out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); - out.write("</div></td></tr>"); - - key = "client.nodes.node(" + i + ").securityUrl"; - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); - out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); - out.write("</div></td></tr>"); - - key = "client.nodes.node(" + i + ").subscriptionUrl"; - out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); - out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); - out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); - out.write("</div></td></tr>"); + <hr> + <h2>Node Management</h2> + <a class="btn btn-primary" href="javascript:newNode();"><i class="icon-large icon-plus-sign"></i> <%=ResourceLoader.GetResource(session, "actions.add")%></a> + <table class="table table-hover"> + + + + <% + + List<Node> nodesist = x.GetJuddiClientConfig().getUDDINodeList(); + for (int i = 0; i < nodesist.size(); i++) { + out.write("<tr><td>"); + out.write(StringEscapeUtils.escapeHtml(nodesist.get(i).getName())); + out.write("</td><td><a href=\"javascript:editNode('" + StringEscapeUtils.escapeJavaScript(nodesist.get(i).getName()) + "');\">Edit</a></td>" + + "<td><a href=\"javascript:deleteNode('" + StringEscapeUtils.escapeJavaScript(nodesist.get(i).getName()) + "');\">Delete</a></td></tr>"); + /* + String key = "client.nodes.node(" + i + ").name"; + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); + out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); + out.write("</div></td></tr>"); + + key = "client.nodes.node(" + i + ").description"; + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); + out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); + out.write("</div></td></tr>"); + + key = "client.nodes.node(" + i + ").proxyTransport"; + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); + out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); + out.write("</div></td></tr>"); + + key = "client.nodes.node(" + i + ").custodyTransferUrl"; + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); + out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); + out.write("</div></td></tr>"); + + key = "client.nodes.node(" + i + ").inquiryUrl"; + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); + out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); + out.write("</div></td></tr>"); + + key = "client.nodes.node(" + i + ").publishUrl"; + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); + out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); + out.write("</div></td></tr>"); + + key = "client.nodes.node(" + i + ").securityUrl"; + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); + out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); + out.write("</div></td></tr>"); + + key = "client.nodes.node(" + i + ").subscriptionUrl"; + out.write("<tr id=\"" + StringEscapeUtils.escapeHtml(key) + "ROW\"><td>"); + out.write("<a href=\"javascript:removeKey('" + StringEscapeUtils.escapeJavaScript(key) + "');\"><i class=\"icon-trash icon-large\"></i></a>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write("class=\"edit\" id=\"" + StringEscapeUtils.escapeHtml(key) + "\">"); + out.write(StringEscapeUtils.escapeHtml(cfg2.getString(key))); + out.write("</div></td></tr>");*/ } - - } catch (Exception ex) { + } catch (Exception ex) { x.log.error(ex); - } - %> + } + %> </table> - <a class="btn btn-primary" href="javascript:newItem();"><i class="icon-large icon-plus-sign"></i> <%=ResourceLoader.GetResource(session, "actions.add")%></a> - <a class="btn btn-primary " href="javascript:saveSettings();"><i class="icon-large icon-save"></i> <%=ResourceLoader.GetResource(session, "actions.save")%></a> <script type="text/javascript"> Reedit(); @@ -169,7 +185,7 @@ { var url = 'ajax/settings.jsp'; var postbackdata = new Array(); - $("div.edit").each(function() + $("div.edit").each(function () { var id = $(this).attr("id"); var value = $(this).text(); @@ -182,7 +198,7 @@ name: "nonce", value: $("#nonce").val() }); - $("div.noedit").each(function() + $("div.noedit").each(function () { var id = $(this).attr("id"); var value = $(this).text(); @@ -192,6 +208,11 @@ }); }); + postbackdata.push({ + name: "formaction", + value: "settings" + }); + var request = $.ajax({ url: url, @@ -203,18 +224,18 @@ }); - request.done(function(msg) { - window.console && console.log('postback done ' + url); - - $("#alert_results").html('<i class="icon-2x icon-thumbs-up"></i><br>' + msg); - $("#alert").modal(); - }); + request.done(function (msg) { + window.console && console.log('postback done ' + url); + + $("#alert_results").html('<i class="icon-2x icon-thumbs-up"></i><br>' + msg); + $("#alert").modal(); + }); - request.fail(function(jqXHR, textStatus) { - window.console && console.log('postback failed ' + url); - $("#alert_results").html('<i class="icon-2x icon-thumbs-down"></i><br>' + jqXHR.responseText + textStatus); - $("#alert").modal(); - }); + request.fail(function (jqXHR, textStatus) { + window.console && console.log('postback failed ' + url); + $("#alert_results").html('<i class="icon-2x icon-thumbs-down"></i><br>' + jqXHR.responseText + textStatus); + $("#alert").modal(); + }); } @@ -233,27 +254,27 @@ <th><%=ResourceLoader.GetResource(session, "items.value")%></th></tr> <% - try { - ClientConfig cfg = x.GetJuddiClientConfig(); - Iterator<String> it2 = cfg.getConfiguration().getKeys(); - - while (it2.hasNext()) { - - String key = it2.next(); - - if (!key.startsWith("config.props.") && !key.startsWith("client")) { - String value = cfg.getConfiguration().getString(key); - out.write("<tr><td>"); - out.write(StringEscapeUtils.escapeHtml(key)); - out.write("</td><td><div "); - out.write(">"); - out.write(StringEscapeUtils.escapeHtml(value)); - out.write("</div></td></tr>"); - } + try { + ClientConfig cfg = x.GetJuddiClientConfig(); + Iterator<String> it2 = cfg.getConfiguration().getKeys(); + + while (it2.hasNext()) { + + String key = it2.next(); + + if (!key.startsWith("config.props.") && !key.startsWith("client")) { + String value = cfg.getConfiguration().getString(key); + out.write("<tr><td>"); + out.write(StringEscapeUtils.escapeHtml(key)); + out.write("</td><td><div "); + out.write(">"); + out.write(StringEscapeUtils.escapeHtml(value)); + out.write("</div></td></tr>"); + } + } + } catch (Exception ex) { + x.log.error(ex); } - } catch (Exception ex) { - x.log.error(ex); - } %> </table> @@ -264,7 +285,201 @@ <script type="text/javascript"> + function deleteNode(node) { + var url = 'ajax/settings.jsp'; + var postbackdata = new Array(); + + postbackdata.push({ + name: "nonce", + value: $("#nonce").val() + }); + + postbackdata.push({ + name: "nodename", + value: node + }); + + + + postbackdata.push({ + name: "formaction", + value: "deleteNode" + }); + + + var request = $.ajax({ + url: url, + type: "POST", + // data" + i18n_type + ": "html", + cache: false, + // processData: false,f + data: postbackdata + }); + + + request.done(function (msg) { + window.console && console.log('postback done ' + url); + + $("#alert_results").html('<i class="icon-2x icon-thumbs-up"></i><br>' + msg); + $("#alert").modal(); + }); + + request.fail(function (jqXHR, textStatus) { + window.console && console.log('postback failed ' + url); + $("#alert_results").html('<i class="icon-2x icon-thumbs-down"></i><br>' + jqXHR.responseText + textStatus); + $("#alert").modal(); + }); + } + function editNode(node) { + var url = 'ajax/settings.jsp'; + var postbackdata = new Array(); + + postbackdata.push({ + name: "nonce", + value: $("#nonce").val() + }); + + postbackdata.push({ + name: "nodename", + value: node + }); + + + + postbackdata.push({ + name: "formaction", + value: "getNode" + }); + + + var request = $.ajax({ + url: url, + type: "POST", + // data" + i18n_type + ": "html", + cache: false, + // processData: false,f + data: postbackdata + }); + + + request.done(function (msg) { + window.console && console.log('postback done ' + url); + $("#alterNodeModalContent").html(msg); + $("#alterNodeModal").modal(); + }); + + request.fail(function (jqXHR, textStatus) { + window.console && console.log('postback failed ' + url); + $("#alert_results").html('<i class="icon-2x icon-thumbs-down"></i><br>' + jqXHR.responseText + textStatus); + $("#alert").modal(); + }); + + } + function newNode() { + $("#newNodeModal").modal('show'); + + } + function saveNewNode() { + var url = 'ajax/settings.jsp'; + var postbackdata = new Array(); + + postbackdata.push({ + name: "nonce", + value: $("#nonce").val() + }); + $(".crudnode").each(function () + { + var id = $(this).attr("id"); + var value = $(this).val(); + postbackdata.push({ + name: id, + value: value + }); + }); + + postbackdata.push({ + name: "formaction", + value: "newNode" + }); + + + var request = $.ajax({ + url: url, + type: "POST", + // data" + i18n_type + ": "html", + cache: false, + // processData: false,f + data: postbackdata + }); + + + request.done(function (msg) { + window.console && console.log('postback done ' + url); + + $("#alert_results").html('<i class="icon-2x icon-thumbs-up"></i><br>' + msg); + $('#newNodeModal').modal('hide'); + $("#alert").modal(); + }); + + request.fail(function (jqXHR, textStatus) { + window.console && console.log('postback failed ' + url); + $("#alert_results").html('<i class="icon-2x icon-thumbs-down"></i><br>' + jqXHR.responseText + textStatus); + $("#alert").modal(); + }); + + } + function saveNode(){ + var url = 'ajax/settings.jsp'; + var postbackdata = new Array(); + + postbackdata.push({ + name: "nonce", + value: $("#nonce").val() + }); + $(".crudnodeAlter").each(function () + { + var id = $(this).attr("id"); + var value = $(this).val(); + postbackdata.push({ + name: id, + value: value + }); + }); + + postbackdata.push({ + name: "formaction", + value: "alterNode" + }); + + + var request = $.ajax({ + url: url, + type: "POST", + // data" + i18n_type + ": "html", + cache: false, + // processData: false,f + data: postbackdata + }); + + + request.done(function (msg) { + window.console && console.log('postback done ' + url); + $('#alterNodeModal').modal('hide'); + $("#alert_results").html('<i class="icon-2x icon-thumbs-up"></i><br>' + msg); + $("#alert").modal(); + + + }); + + request.fail(function (jqXHR, textStatus) { + window.console && console.log('postback failed ' + url); + $("#alert_results").html('<i class="icon-2x icon-thumbs-down"></i><br>' + jqXHR.responseText + textStatus); + $("#alert").modal(); + }); + + + } function newItem() { $("#newItemModal").modal('show'); } @@ -303,6 +518,54 @@ </div> </div> + <div class="modal hide fade container" id="newNodeModal"> + <div class="modal-header"> + <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> + <h3><%=ResourceLoader.GetResource(session, "items.settings.add")%></h3> + </div> + <div class="modal-body" id="newNodeContent"> + <% + out.write("<table class=\"table table-hover\">"); + out.write("<tr><td>Node Name</td><td><input class=\"crudnode\" type=text id=\"nodename\" value=\"" + "\"></td></tr>"); + + out.write("<tr><td>Description</td><td><input class=\"crudnode\" type=text id=\"description\" value=\"" + "\"></td></tr>"); + out.write("<tr><td>Transport</td><td><input class=\"crudnode\" type=text id=\"transport\" value=\"\"></td></tr>"); + out.write("<tr><td>Inquiry</td><td><input class=\"crudnode\" type=text id=\"inquiry\" value=\"\"></td></tr>"); + out.write("<tr><td>Publish</td><td><input class=\"crudnode\" type=text id=\"publish\" value=\"\"></td></tr>"); + out.write("<tr><td>Security</td><td><input class=\"crudnode\" type=text id=\"security\" value=\"\"></td></tr>"); + out.write("<tr><td>Custody Transfer</td><td><input class=\"crudnode\" type=text id=\"custody\" value=\"\"></td></tr>"); + out.write("<tr><td>Subscription</td><td><input class=\"crudnode\" type=text id=\"subscription\" value=\"\"></td></tr>"); + out.write("<tr><td colspan=2>Not used by juddi-gui"); + out.write("<tr><td>Factory Initial</td><td><input type=text class=\"crudnode\" id=\"factoryinit\" value=\"\"></td></tr>"); + out.write("<tr><td>Factory Naming Provider</td><td><input class=\"crudnode\" type=text id=\"factorynaming\" value=\"\"></td></tr>"); + out.write("<tr><td>Factor URL Package</td><td><input class=\"crudnode\" type=text id=\"factoryurl\" value=\"\"></td></tr>"); + out.write("<tr><td>Inquiry REST</td><td><input class=\"crudnode\" type=text id=\"inquiryrest\" value=\"\"></td></tr>"); + out.write("<tr><td>Replication</td><td><input class=\"crudnode\" type=text id=\"replication\" value=\"\"></td></tr>"); + out.write("<tr><td>jUDDI API</td><td><input class=\"crudnode\" type=text id=\"juddiapi\" value=\"\"></td></tr>"); + out.write("</table>"); + %> + </div> + <div class="modal-footer"> + <a href="javascript:saveNewNode();" class="btn btn-primary"><%=ResourceLoader.GetResource(session, "actions.add")%></a> + <a href="javascript:$('#newNodeModal').modal('hide');" class="btn"><%=ResourceLoader.GetResource(session, "modal.close")%></a> + </div> + </div> + + <div class="modal hide fade container" id="alterNodeModal"> + <div class="modal-header"> + <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> + <h3><%=ResourceLoader.GetResource(session, "items.settings.edit")%></h3> + </div> + <div class="modal-body" id="alterNodeModalContent"> + + </div> + <div class="modal-footer"> + <a href="javascript:saveNode();" class="btn btn-primary"><%=ResourceLoader.GetResource(session, "actions.save")%></a> + <a href="javascript:$('#alterNodeModal').modal('hide');" class="btn"><%=ResourceLoader.GetResource(session, "modal.close")%></a> + </div> + </div> + + <%@include file="header-bottom.jsp" %> \ No newline at end of file --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
