You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juddi.apache.org by al...@apache.org on 2013/07/12 20:31:27 UTC

svn commit: r1502644 - in /juddi/trunk: juddi-client/src/main/java/org/apache/juddi/v3/client/mapping/ juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/ juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/ juddi-gui/src/main/webap...

Author: alexoree
Date: Fri Jul 12 18:31:26 2013
New Revision: 1502644

URL: http://svn.apache.org/r1502644
Log:
JUDDI-600 adding WADL2UDDI within the juddi-gui
JUDDI-579 minor fixes for WSDL2UDDI, adding more i18n fields

Added:
    juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWadl.jsp
      - copied, changed from r1492918, juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp
    juddi/trunk/juddi-gui/src/main/webapp/importFromWadl.jsp
      - copied, changed from r1492918, juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp
Modified:
    juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/mapping/WADL2UDDI.java
    juddi/trunk/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java
    juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties
    juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties
    juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp
    juddi/trunk/juddi-gui/src/main/webapp/header-top.jsp
    juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp

Modified: juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/mapping/WADL2UDDI.java
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/mapping/WADL2UDDI.java?rev=1502644&r1=1502643&r2=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/mapping/WADL2UDDI.java (original)
+++ juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/mapping/WADL2UDDI.java Fri Jul 12 18:31:26 2013
@@ -19,6 +19,7 @@ import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.StringReader;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.ArrayList;
@@ -34,6 +35,17 @@ import javax.xml.namespace.QName;
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.http.HttpResponse;
+import org.apache.http.auth.AuthScope;
+import org.apache.http.auth.UsernamePasswordCredentials;
+import org.apache.http.client.ResponseHandler;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.conn.ClientConnectionManager;
+import org.apache.http.conn.scheme.Scheme;
+import org.apache.http.conn.scheme.SchemeRegistry;
+import org.apache.http.impl.client.BasicResponseHandler;
+import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.http.impl.conn.BasicClientConnectionManager;
 import org.apache.juddi.api_v3.AccessPointType;
 import org.apache.juddi.v3.client.UDDIConstants;
 import org.apache.juddi.v3.client.config.Property;
@@ -59,6 +71,7 @@ import org.uddi.api_v3.TModel;
 import org.uddi.api_v3.TModelInstanceDetails;
 import org.uddi.api_v3.TModelInstanceInfo;
 import org.w3c.dom.Element;
+import org.xml.sax.InputSource;
 
 /**
  * This class is incomplete
@@ -337,6 +350,72 @@ public class WADL2UDDI {
         Application unmarshal = JAXB.unmarshal(file, Application.class);
         return unmarshal;
     }
+    
+    public static Application ParseWadl(URL weburl, String username, String password, boolean ignoreSSLErrors){
+            DefaultHttpClient httpclient = null;
+            Application unmarshal=null;
+        try {
+            String url = weburl.toString();
+            if (!url.toLowerCase().startsWith("http")) {
+                return ParseWadl(weburl);
+            }
+            
+            boolean usessl = false;
+            int port = 80;
+            if (url.toLowerCase().startsWith("https://")) {
+                port = 443;
+                usessl = true;
+            }
+
+            if (weburl.getPort() > 0) {
+                port = weburl.getPort();
+            }
+
+            if (ignoreSSLErrors && usessl) {
+                SchemeRegistry schemeRegistry = new SchemeRegistry();
+                schemeRegistry.register(new Scheme("https", port, new MockSSLSocketFactory()));
+                ClientConnectionManager cm = new BasicClientConnectionManager(schemeRegistry);
+                httpclient = new DefaultHttpClient(cm);
+            } else {
+                httpclient = new DefaultHttpClient();
+            }
+
+            if (username != null && username.length() > 0
+                    && password != null && password.length() > 0) {
+
+
+                httpclient.getCredentialsProvider().setCredentials(
+                        new AuthScope(weburl.getHost(), port),
+                        new UsernamePasswordCredentials(username, password));
+            }
+            HttpGet httpGet = new HttpGet(url);
+            try {
+
+                HttpResponse response1 = httpclient.execute(httpGet);
+                //System.out.println(response1.getStatusLine());
+                // HttpEntity entity1 = response1.getEntity();
+                // do something useful with the response body
+                // and ensure it is fully consumed
+                ResponseHandler<String> responseHandler = new BasicResponseHandler();
+                String handleResponse = responseHandler.handleResponse(response1);
+                StringReader sr = new StringReader(handleResponse);
+                unmarshal = JAXB.unmarshal(sr, Application.class);
+                
+
+            } finally {
+                httpGet.releaseConnection();
+
+            }
+
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+        } finally {
+            if (httpclient != null) {
+                httpclient.getConnectionManager().shutdown();
+            }
+        }
+        return unmarshal;
+    }
 
     public static Application ParseWadl(File file) throws FileNotFoundException, IOException {
         Application unmarshal = JAXB.unmarshal(file, Application.class);

Modified: juddi/trunk/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java?rev=1502644&r1=1502643&r2=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java (original)
+++ juddi/trunk/juddi-gui/src/main/java/org/apache/juddi/webconsole/hub/UddiHub.java Fri Jul 12 18:31:26 2013
@@ -2970,4 +2970,5 @@ public class UddiHub {
         }
         return null;
     }
+   
 }

Modified: juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties?rev=1502644&r1=1502643&r2=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties (original)
+++ juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web.properties Fri Jul 12 18:31:26 2013
@@ -293,15 +293,15 @@ items.subscription.CompletionStatus.STAT
 items.subscription.CompletionStatus.STATUS_TO_KEY_INCOMPLETE=This indicates that the owner of the business has asserted a relationship with another business, but it has not be reciprocated.
 items.subscription.CompletionStatus.STATUS_BOTH_INCOMPLETE=This indicates that the publisher assertion embedded in the assertion Status Item has been deleted from both ends of the business relationship.
 pages.subscription.content=UDDI has a feature that allows you to be alerted of updates to either specific UDDI entries or to search results. This page will help you setup a subscription to meet your needs. Note: only one type of subscription filter can be defined per subscription. Normally, users can make as many subscriptions as they want, however it may be effectively limited by the registry implementation.
-pages.subscription.step1=Step 1 - What do you type of information to you want alerts on?
-pages.subscription.step2=Step 2 - Which items do you want alerts on?
+pages.subscription.step1=Step 1) What do you type of information to you want alerts on?
+pages.subscription.step2=Step 2) Which items do you want alerts on?
 pages.subscription.step1.specific=Changes to a specific item
 pages.subscription.step1.search=Changes to search results, such as a new item
 items.publisherassertion.status=Publisher Assertion Status
 actions.add=Add
 actions.remove=Remove
 items.findqualifiers=Find Qualifiers
-pages.subscription.step3=Step 3 - How do want to receive the alerts?
+pages.subscription.step3=Step 3) How do want to receive the alerts?
 pages.subscription.step3.direct=Send me alerts directly
 pages.subscription.step3.direct.tooltip=Either via a UDDI Subscription Client API, Email or some other notifier
 pages.subscription.step3.pickup=I'll pick them up
@@ -330,3 +330,24 @@ actions.approve=Approve
 navbar.create.serviceimport=Register Services from WSDL
 navbar.create.serviceimport.tooltip=Based on the UDDI TC, Using WSDL in a UDDI Registry
 warning.ssl=Warning, you're not using SSL and your password could be exposed!
+navbar.create.serviceimport.wadl=Register Services from WADL
+pages.serviceimport.content.wadl=pages.serviceimport.content.wadl
+pages.serviceimport.content=pages.serviceimport.content
+pages.serviceimport.content.step1=Step 1)    WSDL Location and Credentials
+pages.serviceimport.content.step1a=The first step is to tell us where we can find the Web Service Description Language (WSDL) document that                             describes your services' operations, inputs and outputs and execution URLs. If you don't know where to find it                             you can usually add a '?wsdl' to the end of the URL to the service. WSDLs are XML documents.
+pages.serviceimport.content.step1b=Sometimes, access to the description file is restricted by a username and password, if this is the case, enter                             your credentials here. It won't be saved anywhere.
+pages.serviceimport.content.usessl=Please consider switching to a secure connection such as SSL or TLS (the address bar starts with https://),                                  otherwise your password may be exposed.
+pages.serviceimport.content.sslwarning=Warning!
+pages.serviceimport.content.step2=Step 2)  Key Domain
+pages.serviceimport.content.step2a=Enter a key domain or select an existing tModel Key Generator. We'll make one if it doesn't exist.
+pages.serviceimport.content.step3=Step 3)   Business Selection
+pages.serviceimport.content.step4=Step 4) Review and Approve
+actions.preview=Preview
+pages.serviceimport.content.step4a=Preview the new items, then click save. Don't worry, you can always change these values later.
+pages.serviceimport.content.step1.wadl=Step 1)    WADL Location and Credentials
+pages.serviceimport.content.step1a.wadl=The first step is to tell us where we can find the Web Application Description Language (WADL) document that                             describes your services' operations, inputs and outputs and execution URLs. If you don't know where to find it                             you can usually add a '?wsdl' to the end of the URL to the service. WADLs are XML documents.
+items.optional=(Optional)
+items.ignoresslerror=Ignore SSL Errors
+items.businesskeyorname=Business Key or Name
+pages.serviceimport.content.step3a=Newly registered services need to be attached to a business. Either enter a new business name.
+navbar.create.serviceimport.tooltip.wadl=Based on the UDDI TC, Using WSDL in a UDDI Registry, but adapted for WADL

Modified: juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties?rev=1502644&r1=1502643&r2=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties (original)
+++ juddi/trunk/juddi-gui/src/main/resources/org/apache/juddi/webconsole/resources/web_es.properties Fri Jul 12 18:31:26 2013
@@ -217,7 +217,7 @@ items.overviewdocument.description=Descr
 navbar.help=Ayudar
 pages.tmodeleditor.title=tModel Editor
 pages.editor.tabnav.overview=Documentos Informaci\u00f3n General
-pages.editor.tabnav.overview.description=ads
+pages.editor.tabnav.overview.description=Por lo general son las direcciones URL a las p\u00e1ginas web que describen detalles de este tModel y escenarios de uso.
 items.tmodel.description=tModels puede tener m\u00e1s de una descripci\u00f3n, tal como en un idioma diferente.
 items.tmodel.key.description=La clave tModel es el identificador \u00fanico. Si se especifica un tModel, debe estar precedido de una partici\u00f3n existente (generador de claves), la otra se genera para usted.
 items.tmodel.name=Nombre - El nombre describe esta estructura tModel. Se trata de un campo obligatorio.
@@ -294,15 +294,15 @@ items.subscription.CompletionStatus.STAT
 items.subscription.CompletionStatus.STATUS_TO_KEY_INCOMPLETE=Esto indica que el propietario de la empresa ha afirmado una relaci\u00f3n con otra empresa, pero no se ha correspondido.
 items.subscription.CompletionStatus.STATUS_BOTH_INCOMPLETE=Esto indica que la afirmaci\u00f3n editor incrustado en el Estado afirmaci\u00f3n art\u00edculo ha sido borrado de ambos extremos de la relaci\u00f3n de negocios.
 pages.subscription.content=UDDI tiene una caracter\u00edstica que le permite ser alertado de cambios a cualquiera de las entradas espec\u00edficas UDDI o para los resultados de b\u00fasqueda. Esta p\u00e1gina le ayudar\u00e1 a configurar una suscripci\u00f3n para satisfacer sus necesidades. Nota: s\u00f3lo un tipo de filtro de suscripci\u00f3n puede ser definido por suscripci\u00f3n. Normalmente, los usuarios pueden hacer tantas suscripciones como quieren, sin embargo, puede ser efectivamente limitado por la aplicaci\u00f3n de registro.
-pages.subscription.step1=Paso 1 - \u00bfQu\u00e9 tipo de informaci\u00f3n que desea recibir alertas sobre?
-pages.subscription.step2=Paso 2 - \u00bfA qu\u00e9 elementos desea que las alertas en?
+pages.subscription.step1=Paso 1) \u00bfQu\u00e9 tipo de informaci\u00f3n que desea recibir alertas sobre?
+pages.subscription.step2=Paso 2) \u00bfA qu\u00e9 elementos desea que las alertas en?
 pages.subscription.step1.specific=Los cambios en un elemento espec\u00edfico
 pages.subscription.step1.search=Los cambios en los resultados de b\u00fasqueda, tales como un nuevo elemento
 items.publisherassertion.status=Editorial Status aserci\u00f3n
 actions.add=A\u00f1adir
 actions.remove=Eliminar
 items.findqualifiers=Encontrar Calificadores
-pages.subscription.step3=Paso 3 - \u00bfC\u00f3mo desea recibir las alertas?
+pages.subscription.step3=Paso 3) \u00bfC\u00f3mo desea recibir las alertas?
 pages.subscription.step3.direct=Recibir avisos directamente
 pages.subscription.step3.direct.tooltip=O a trav\u00e9s de una suscripci\u00f3n de cliente API UDDI, correo electr\u00f3nico o cualquier otro notificador
 pages.subscription.step3.pickup=Yo recoger\u00e9
@@ -331,3 +331,24 @@ actions.approve=Aprobar
 navbar.create.serviceimport=Registro de Servicios de WSDL
 navbar.create.serviceimport.tooltip=Basado en el UDDI TC, utilizando WSDL en un registro UDDI
 warning.ssl=Atenci\u00f3n, usted no est\u00e1 usando SSL y su clave podr\u00eda estar expuesto!
+navbar.create.serviceimport.wadl=Registro de Servicios de WADL
+pages.serviceimport.content.wadl=pages.serviceimport.content.wadl
+pages.serviceimport.content=pages.serviceimport.content
+pages.serviceimport.content.step1=Paso 1) Ubicaci\u00f3n WSDL y credenciales
+pages.serviceimport.content.step1a=El primer paso es que nos diga donde podemos encontrar el Web Service Description Language (WSDL) que describe las operaciones de sus servicios \u00bb, entradas y salidas y URL ejecuci\u00f3n. Si usted no sabe d\u00f3nde encontrarlo normalmente se puede a\u00f1adir un '? Wsdl "al final de la URL para el servicio. WSDL son documentos XML.
+pages.serviceimport.content.step1b=A veces, el acceso al archivo de descripci\u00f3n est\u00e1 limitada por un nombre de usuario y contrase\u00f1a, si este es el caso, ingrese sus credenciales de aqu\u00ed. No se guardar\u00e1 ninguna parte.
+pages.serviceimport.content.usessl=Por favor considerar cambiar a una conexi\u00f3n segura, como SSL o TLS (la barra de direcciones comienza por https://),\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 de lo contrario su contrase\u00f1a puede estar expuesto.
+pages.serviceimport.content.sslwarning=\u00a1Advertencia!
+pages.serviceimport.content.step2=Paso 2) Dominio Clave
+pages.serviceimport.content.step2a=Introduzca una clave de dominio o seleccione una existente Key Generator tModel. Vamos a hacer uno si no existe.
+pages.serviceimport.content.step3=Paso 3) Selecci\u00f3n de negocios
+pages.serviceimport.content.step4=Paso 4) Revisar y aprobar
+actions.preview=Preestrenar
+pages.serviceimport.content.step4a=Ver los nuevos art\u00edculos, haga clic en Guardar. No te preocupes, siempre puedes cambiar estos valores m\u00e1s tarde.
+pages.serviceimport.content.step1.wadl=Step 1)    WADL Location and Credentials
+pages.serviceimport.content.step1a.wadl=El primer paso es que nos diga donde podemos encontrar el Web Application Description Language (WADL) que describe las operaciones de sus servicios \u00bb, entradas y salidas y URL ejecuci\u00f3n. Si usted no sabe d\u00f3nde encontrarlo normalmente se puede a\u00f1adir un '? Wsdl "al final de la URL para el servicio. WADL son documentos XML.
+items.optional=(Opcional)
+items.ignoresslerror=Ignorar errores SSL
+items.businesskeyorname=Llave de negocios o Nombre
+pages.serviceimport.content.step3a=Servicios recientemente registrados deben fijarse a un negocio. O introduzca un nuevo nombre comercial.
+navbar.create.serviceimport.tooltip.wadl=Basado en el UDDI TC, utilizando WSDL en un registro UDDI, pero adaptado para WADL

Copied: juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWadl.jsp (from r1492918, juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp)
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWadl.jsp?p2=juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWadl.jsp&p1=juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp&r1=1492918&r2=1502644&rev=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp (original)
+++ juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWadl.jsp Fri Jul 12 18:31:26 2013
@@ -1,8 +1,16 @@
 <%-- 
-    Document   : importFromWsdl
-    Created on : May 11, 2013, 3:26:42 PM
+    Document   : importFromWadl
+    Created on : July 11, 2013, 3:26:42 PM
     Author     : Alex O'Ree
 --%>
+<%@page import="org.apache.juddi.jaxb.PrintUDDI"%>
+<%@page import="org.uddi.api_v3.BusinessService"%>
+<%@page import="org.apache.juddi.v3.client.mappings.wadl.Application"%>
+<%@page import="org.apache.juddi.v3.client.mapping.WADL2UDDI"%>
+<%@page import="java.io.File"%>
+<%@page import="org.apache.juddi.v3.client.config.TokenResolver"%>
+<%@page import="org.uddi.api_v3.Name"%>
+<%@page import="org.uddi.api_v3.BusinessEntity"%>
 <%@page import="java.util.ArrayList"%>
 <%@page import="java.util.List"%>
 <%@page import="org.apache.juddi.webconsole.hub.builders.Printers"%>
@@ -25,7 +33,9 @@
     if (request.getMethod().equalsIgnoreCase("POST")) {
         String method = request.getParameter("formaction");
         if (method != null && method.length() > 0) {
-            if (method.equalsIgnoreCase("preview")) {
+
+            if (method.equalsIgnoreCase("preview") || method.equalsIgnoreCase("save")) {
+                UddiHub x = UddiHub.getInstance(application, session);
                 //Fetch the WSDL w/wo credentials
                 String uri = request.getParameter("wsdlurl");
                 String username = request.getParameter("wsdlusername");
@@ -33,60 +43,67 @@
                 String keydomain = request.getParameter("keydomain");
                 String businessname = request.getParameter("businessname");
                 boolean ignoreSSL = false;
-                try{
+                try {
                     ignoreSSL = Boolean.parseBoolean(request.getParameter("ignoressl"));
-                }catch (Exception ex){}
+                } catch (Exception ex) {
+                }
                 try {
                     URL url = new URL(uri);
                     //"http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl");
                     String domain = url.getHost();
                     //TModel keygen = UDDIClerk.createKeyGenator("uddi:" + domain + ":keygenerator", domain, "en");
 
-                    ReadWSDL rw = new ReadWSDL();
-                    rw.setIgnoreSSLErrors(ignoreSSL);
-                    Definition wsdlDefinition = rw.readWSDL(url, username, password);
+                    Application app = WADL2UDDI.ParseWadl(url, username, password, ignoreSSL);
+
+                    List<URL> urls = WADL2UDDI.GetBaseAddresses(app);
+                    URL baseurl = urls.get(0);
+
+                    //TModel keygen = UDDIClerk.createKeyGenator("uddi:" + domain + ":keygenerator", domain, "en");
                     Properties properties = new Properties();
-                    properties.put("keyDomain", keydomain);
-                    properties.put("businessName", businessname);
+                    properties.put("keyDomain", domain);
+                    properties.put("businessName", domain);
                     properties.put("serverName", url.getHost());
                     properties.put("serverPort", url.getPort());
-                    String wsdlURL = wsdlDefinition.getDocumentBaseURI();
-                    WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties);
-                    BusinessServices businessServices = wsdl2UDDI.createBusinessServices(wsdlDefinition);
-                    @SuppressWarnings("unchecked")
-                    Map<QName, PortType> portTypes = (Map<QName, PortType>) wsdlDefinition.getAllPortTypes();
-                    Set<TModel> portTypeTModels = wsdl2UDDI.createWSDLPortTypeTModels(wsdlURL, portTypes);
-                    Map allBindings = wsdlDefinition.getAllBindings();
-                    Set<TModel> bindingTmodels = wsdl2UDDI.createWSDLBindingTModels(wsdlURL, allBindings);
+                    //wsdlURL = wsdlDefinition.getDocumentBaseURI();
+                    WADL2UDDI wadl2UDDI = new WADL2UDDI(null, new URLLocalizerDefaultImpl(), properties);
+
+                    BusinessService businessServices = wadl2UDDI.createBusinessService(new QName(url.getHost(), "Servicename"), app);
+
+
+                    Set<TModel> portTypeTModels = wadl2UDDI.createWADLPortTypeTModels(uri, app);
                     List<TModel> tmodels = new ArrayList<TModel>();
-                    tmodels.addAll(bindingTmodels);
                     tmodels.addAll(portTypeTModels);
 
-                    out.write("<i class=\"icon-thumbs-up icon-large\"></i> WSDL successfully parsed! This will create " + portTypeTModels.size()
-                            + " portType tmodel(s), " + bindingTmodels.size()
-                            + " binding tModel(s), " + allBindings.size()
-                            + " binding(s), and " + businessServices.getBusinessService().size() + " service(s).<br>");
+                    boolean createKeyGen = false;
+                    TModel keygen = UDDIClerk.createKeyGenator("uddi:" + domain + ":keygenerator", domain, (String) session.getAttribute("locale"));
+                    if (x.getTmodelDetails(keygen.getTModelKey()) == null) {
+                        createKeyGen = true;
+                    }
+                    out.write("<i class=\"icon-thumbs-up icon-large\"></i> WADL successfully parsed! This will create " + portTypeTModels.size()
+                            + "tModels, " + ((createKeyGen == true) ? "one tModel Key Generator, " : "")
+                            + "1 binding, and 1 service(s) attached to the business with "
+                            + "the key " + StringEscapeUtils.escapeHtml(businessname) + " .<br>");
                     out.write("Services:<br><ul>");
-                    for (int i = 0; i < businessServices.getBusinessService().size(); i++) {
-                        out.write("<li>Key:"
-                                + StringEscapeUtils.escapeHtml(businessServices.getBusinessService().get(i).getServiceKey())
-                                + " <br>Name: "
-                                + StringEscapeUtils.escapeHtml(Printers.ListNamesToString(businessServices.getBusinessService().get(i).getName())));
-                        if (businessServices.getBusinessService().get(i).getBindingTemplates() != null) {
-                            out.write("<br>Binding Templates:<ul>");
-                            for (int k = 0; k < businessServices.getBusinessService().get(i).getBindingTemplates().getBindingTemplate().size(); k++) {
-                                out.write("<li>Key: " + StringEscapeUtils.escapeHtml(businessServices.getBusinessService().get(i).getBindingTemplates().getBindingTemplate().get(k).getBindingKey())
-                                        + "<br>Access Point: ");
-                                if (businessServices.getBusinessService().get(i).getBindingTemplates().getBindingTemplate().get(k).getAccessPoint() != null) {
-                                    out.write(StringEscapeUtils.escapeHtml(
-                                            businessServices.getBusinessService().get(i).getBindingTemplates().getBindingTemplate().get(k).getAccessPoint().getValue()));
-                                }
-                                out.write("</li>");
+
+                    out.write("<li>Key:"
+                            + StringEscapeUtils.escapeHtml(businessServices.getServiceKey())
+                            + " <br>Name: "
+                            + StringEscapeUtils.escapeHtml(Printers.ListNamesToString(businessServices.getName())));
+                    if (businessServices.getBindingTemplates() != null) {
+                        out.write("<br>Binding Templates:<ul>");
+                        for (int k = 0; k < businessServices.getBindingTemplates().getBindingTemplate().size(); k++) {
+                            out.write("<li>Key: " + StringEscapeUtils.escapeHtml(businessServices.getBindingTemplates().getBindingTemplate().get(k).getBindingKey())
+                                    + "<br>Access Point: ");
+                            if (businessServices.getBindingTemplates().getBindingTemplate().get(k).getAccessPoint() != null) {
+                                out.write(StringEscapeUtils.escapeHtml(
+                                        businessServices.getBindingTemplates().getBindingTemplate().get(k).getAccessPoint().getValue()));
                             }
-                            out.write("</ul>");
+                            out.write("</li>");
                         }
-                        out.write("</li>");
+                        out.write("</ul>");
                     }
+                    out.write("</li>");
+
                     out.write("</ul>");
 
                     out.write("tModels<br><ul>");
@@ -99,18 +116,57 @@
                     }
                     out.write("</ul>");
 
+                            
+                    if (method.equalsIgnoreCase("save")) {
 
-%>
+                        //forgot the key generator
 
+                        StringBuilder result = new StringBuilder();
+                        if (createKeyGen) {
+                            result.append("Saving tModel " + StringEscapeUtils.escapeHtml(keygen.getName().getValue()) + "..." + x.SaveTModel(keygen)).append("<br>");
+                        }
+                        for (int i = 0; i < tmodels.size(); i++) {
+                            result.append("Saving tModel " + StringEscapeUtils.escapeHtml(tmodels.get(i).getName().getValue()) + "..." + x.SaveTModel(tmodels.get(i))).append("<br>");
+                        }
+
+                        //this needs work
+                        BusinessEntity biz = x.GetBusinessDetails(businessname);
+                        if (biz != null) {
+                            if (biz.getBusinessServices() == null) {
+                                biz.setBusinessServices(new BusinessServices());
+                            }
+
+                        } else {
+                            biz = new BusinessEntity();
+                            biz.setBusinessKey(TokenResolver.replaceTokens("uddi:${keyDomain}:business_${businessName}", properties).toLowerCase());
+                            biz.getName().add(new Name(businessname, "en"));
+                        }
+                        if (biz.getBusinessServices() == null) {
+                            biz.setBusinessServices(new BusinessServices());
+                        }
+
+                        biz.getBusinessServices().getBusinessService().add(businessServices);
+
+         //               PrintUDDI<BusinessEntity> sbp = new PrintUDDI<BusinessEntity>();
+           //             result.append("<br>" + sbp.print(biz) + "<br>");
+                                    
+                        result.append("Saving business " + StringEscapeUtils.escapeHtml(biz.getName().get(0).getValue()) + "..." + x.SaveBusinessDetails(biz));
+                        out.write(result.toString());
+                    }
 
-<%
                 } catch (Exception ex) {
-                    out.write("<i class=\"icon-thumbs-down icon-large\"></i> Error! " +ex.getClass().getCanonicalName() + " " + ex.getMessage());
+                    out.write("<i class=\"icon-thumbs-down icon-large\"></i> Error! " + ex.getClass().getCanonicalName() + " " + ex.getMessage());
                 }
+            } else {
+                out.write("bad request");
             }
+        } else {
+            out.write("bad request");
         }
+    } else {
+        out.write("bad request");
     }
 
 
 
-%>
\ No newline at end of file
+%>

Modified: juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp?rev=1502644&r1=1502643&r2=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp (original)
+++ juddi/trunk/juddi-gui/src/main/webapp/ajax/importFromWsdl.jsp Fri Jul 12 18:31:26 2013
@@ -3,6 +3,9 @@
     Created on : May 11, 2013, 3:26:42 PM
     Author     : Alex O'Ree
 --%>
+<%@page import="org.apache.juddi.v3.client.config.TokenResolver"%>
+<%@page import="org.uddi.api_v3.Name"%>
+<%@page import="org.uddi.api_v3.BusinessEntity"%>
 <%@page import="java.util.ArrayList"%>
 <%@page import="java.util.List"%>
 <%@page import="org.apache.juddi.webconsole.hub.builders.Printers"%>
@@ -25,7 +28,9 @@
     if (request.getMethod().equalsIgnoreCase("POST")) {
         String method = request.getParameter("formaction");
         if (method != null && method.length() > 0) {
-            if (method.equalsIgnoreCase("preview")) {
+
+            if (method.equalsIgnoreCase("preview") || method.equalsIgnoreCase("save")) {
+                UddiHub x = UddiHub.getInstance(application, session);
                 //Fetch the WSDL w/wo credentials
                 String uri = request.getParameter("wsdlurl");
                 String username = request.getParameter("wsdlusername");
@@ -33,9 +38,10 @@
                 String keydomain = request.getParameter("keydomain");
                 String businessname = request.getParameter("businessname");
                 boolean ignoreSSL = false;
-                try{
+                try {
                     ignoreSSL = Boolean.parseBoolean(request.getParameter("ignoressl"));
-                }catch (Exception ex){}
+                } catch (Exception ex) {
+                }
                 try {
                     URL url = new URL(uri);
                     //"http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl");
@@ -62,10 +68,17 @@
                     tmodels.addAll(bindingTmodels);
                     tmodels.addAll(portTypeTModels);
 
+                    boolean createKeyGen = false;
+                    TModel keygen = UDDIClerk.createKeyGenator("uddi:" + domain + ":keygenerator", domain, (String) session.getAttribute("locale"));
+                    if (x.getTmodelDetails(keygen.getTModelKey()) == null) {
+                        createKeyGen = true;
+                    }
                     out.write("<i class=\"icon-thumbs-up icon-large\"></i> WSDL successfully parsed! This will create " + portTypeTModels.size()
                             + " portType tmodel(s), " + bindingTmodels.size()
-                            + " binding tModel(s), " + allBindings.size()
-                            + " binding(s), and " + businessServices.getBusinessService().size() + " service(s).<br>");
+                            + " binding tModel(s), " + allBindings.size() +
+                            ((createKeyGen==true) ? "one tModel Key Generator, " : "")
+                            + " binding(s), and " + businessServices.getBusinessService().size() + " service(s) attached to the business with "
+                            + "the key " + StringEscapeUtils.escapeHtml(businessname) + " .<br>");
                     out.write("Services:<br><ul>");
                     for (int i = 0; i < businessServices.getBusinessService().size(); i++) {
                         out.write("<li>Key:"
@@ -99,18 +112,53 @@
                     }
                     out.write("</ul>");
 
+                    if (method.equalsIgnoreCase("save")) {
+                        
+                        //forgot the key generator
+
+                        StringBuilder result = new StringBuilder();
+                        if (createKeyGen)
+                                                       {
+                            result.append("Saving tModel " + StringEscapeUtils.escapeHtml( keygen.getName().getValue())  + "..." +x.SaveTModel(keygen)).append("<br>");
+                        }
+                        for (int i = 0; i < tmodels.size(); i++) {
+                            result.append("Saving tModel " + StringEscapeUtils.escapeHtml( tmodels.get(i).getName().getValue())  + "..." + x.SaveTModel(tmodels.get(i))).append("<br>");
+                        }
 
-%>
+                        BusinessEntity biz = x.GetBusinessDetails(businessname);
+                        if (biz != null) {
+                            if (biz.getBusinessServices() == null) {
+                                biz.setBusinessServices(new BusinessServices());
+                            }
 
+                        } else {
+                            biz = new BusinessEntity();
+                            biz.setBusinessKey( TokenResolver.replaceTokens("uddi:${keyDomain}:business_${businessName}", properties).toLowerCase() );
+                            biz.getName().add(new Name(businessname, "en"));
+                        }
+                        if (biz.getBusinessServices() == null) {
+                            biz.setBusinessServices(new BusinessServices());
+                        }
+                        for (int i = 0; i < businessServices.getBusinessService().size(); i++) {
+                            biz.getBusinessServices().getBusinessService().add(businessServices.getBusinessService().get(i));
+                        }
+                        result.append("Saving business " + StringEscapeUtils.escapeHtml( biz.getName().get(0).getValue())  + "..." + x.SaveBusinessDetails(biz));
+                        out.write(result.toString());
+                    }
 
-<%
                 } catch (Exception ex) {
-                    out.write("<i class=\"icon-thumbs-down icon-large\"></i> Error! " +ex.getClass().getCanonicalName() + " " + ex.getMessage());
+                    out.write("<i class=\"icon-thumbs-down icon-large\"></i> Error! " + ex.getClass().getCanonicalName() + " " + ex.getMessage());
                 }
+            } else {
+                out.write("bad request");
             }
+        } else {
+            out.write("bad request");
         }
+    } else {
+        out.write("bad request");
     }
 
 
 
-%>
\ No newline at end of file
+%>

Modified: juddi/trunk/juddi-gui/src/main/webapp/header-top.jsp
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-gui/src/main/webapp/header-top.jsp?rev=1502644&r1=1502643&r2=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-gui/src/main/webapp/header-top.jsp (original)
+++ juddi/trunk/juddi-gui/src/main/webapp/header-top.jsp Fri Jul 12 18:31:26 2013
@@ -141,6 +141,7 @@
                                         <li><a href="businessEditor2.jsp" title="<%=ResourceLoader.GetResource(session, "navbar.create.business.tooltip")%>"><%=ResourceLoader.GetResource(session, "navbar.create.business")%></a></li>
                                         <li><a href="businessBrowse.jsp" title="<%=ResourceLoader.GetResource(session, "navbar.create.service.tooltip")%>"><%=ResourceLoader.GetResource(session, "navbar.create.service")%></a></li>
                                         <li><a href="importFromWsdl.jsp" title="<%=ResourceLoader.GetResource(session, "navbar.create.serviceimport.tooltip")%>"><%=ResourceLoader.GetResource(session, "navbar.create.serviceimport")%></a></li>
+                                        <li><a href="importFromWadl.jsp" title="<%=ResourceLoader.GetResource(session, "navbar.create.serviceimport.tooltip.wadl")%>"><%=ResourceLoader.GetResource(session, "navbar.create.serviceimport.wadl")%></a></li>
                                         <li><a href="tmodelEditor.jsp" title="<%=ResourceLoader.GetResource(session, "navbar.create.tmodel.tooltip")%>"><%=ResourceLoader.GetResource(session, "navbar.create.tmodel")%></a></li>
                                         <li><a href="tmodelPartitions.jsp" title="<%=ResourceLoader.GetResource(session, "navbar.create.tmodelkeygen.tooltip")%>"><%=ResourceLoader.GetResource(session, "navbar.create.tmodelkeygen")%></a></li>
                                     </ul>

Copied: juddi/trunk/juddi-gui/src/main/webapp/importFromWadl.jsp (from r1492918, juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp)
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-gui/src/main/webapp/importFromWadl.jsp?p2=juddi/trunk/juddi-gui/src/main/webapp/importFromWadl.jsp&p1=juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp&r1=1492918&r2=1502644&rev=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp (original)
+++ juddi/trunk/juddi-gui/src/main/webapp/importFromWadl.jsp Fri Jul 12 18:31:26 2013
@@ -1,6 +1,6 @@
 <%-- 
-    Document   : importFromWsdl
-    Created on : May 10, 2013, 6:52:05 PM
+    Document   : importFromWadl
+    Created on : July 11, 2013, 6:52:05 PM
     Author     : Alex O'Ree
 --%>
 
@@ -16,14 +16,14 @@
 
     <!-- Main hero unit for a primary marketing message or call to action -->
     <div class="well" >
-        <h1><%=ResourceLoader.GetResource(session, "navbar.create.serviceimport")%></h1>
+        <h1><%=ResourceLoader.GetResource(session, "navbar.create.serviceimport.wadl")%></h1>
 
     </div>
 
     <!-- Example row of columns -->
     <div class="row">
         <div class="span12" >
-            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content")%>
+            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.wadl")%>
             <Br>
             <br>
 
@@ -31,31 +31,28 @@
                 <div class="accordion-group">
                     <div class="accordion-heading">
                         <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapse1">
-                            Step 1)    WSDL Location and Credentials
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step1.wadl")%>
                         </a>
                     </div>
                     <div id="collapse1" class="accordion-body collapse in">
                         <div class="accordion-inner">
-                            The first step is to tell us where we can find the Web Service Description Language (WSDL) document that
-                            describes your services' operations, inputs and outputs and execution URLs. If you don't know where to find it
-                            you can usually add a '?wsdl' to the end of the URL to the service. WSDLs are XML documents.<br>
-                            <input type="text" id="wsdlurl" placeholder="http://localhost:8080/services/myService?wsdl" style="width:100%" ><br>
-                            Sometimes, access to the WSDL file is restricted by a username and password, if this is the case, enter
-                            your credentials here. It won't be saved anywhere.<br>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step1a.wadl")%><br>
+                            <input type="text" id="wsdlurl" placeholder="http://localhost:8080/services/myService?wadl" style="width:100%" ><br>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step1b")%><br>
                             <%
                                 if (!request.isSecure()) {
                             %>
                             <div class="alert alert-error">
                                 <button type="button" class="close" data-dismiss="alert">&times;</button>
-                                <h4><i class="icon-warning-sign"></i> Warning!</h4>
-                                Please consider switching to a secure connection such as SSL or TLS (the address bar starts with https://), 
-                                otherwise your password may be exposed.
+                                <h4><i class="icon-warning-sign"></i> <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.sslwarning")%></h4>
+                                <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.usessl")%>
+
                             </div>
                             <%                                }
                             %>
-                            <input type="text" id="wsdlusername" placeholder="username (optional)" ><br>
-                            <input type="text" id="wsdlpassword" placeholder="password (optional)" ><br>
-                            <input type="checkbox" id="wsdlignoressl" > Ignore SSL Errors<br>
+                            <input type="text" id="wsdlusername" placeholder="<%=ResourceLoader.GetResource(session, "navbar.login.username")%> <%=ResourceLoader.GetResource(session, "items.optional")%>" ><br>
+                            <input type="text" id="wsdlpassword" placeholder="<%=ResourceLoader.GetResource(session, "navbar.login.password")%> <%=ResourceLoader.GetResource(session, "items.optional")%>" ><br>
+                            <input type="checkbox" id="wsdlignoressl" > <%=ResourceLoader.GetResource(session, "items.ignoresslerror")%><br>
                         </div>
                     </div>
                 </div>
@@ -102,18 +99,27 @@
                         $("#collapse2").collapse('show');
                     }
                     
-                    function preview()
+                    function save(preview)
                     {
                         var postbackdata = new Array();
-                        var url='ajax/importFromWsdl.jsp';
+                        var url='ajax/importFromWadl.jsp';
                         postbackdata.push({
                             name:"nonce", 
                             value: $("#nonce").val()
                         });
-                        postbackdata.push({
-                            name:"formaction", 
-                            value: "preview"
-                        });
+                        if (preview){
+                            postbackdata.push({
+                                name:"formaction", 
+                                value: "preview"
+                            });
+                        }
+                        else
+                        {
+                            postbackdata.push({
+                                name:"formaction", 
+                                value: "save"
+                            });
+                        }
                         postbackdata.push({
                             name:"wsdlusername", 
                             value: $("#wsdlusername").val()
@@ -178,12 +184,13 @@
                 <div class="accordion-group">
                     <div class="accordion-heading">
                         <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapse2" onclick="trigger1();">
-                            Step 2)  Key Domain
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step2")%>
                         </a>
                     </div>
                     <div id="collapse2" class="accordion-body collapse">
                         <div class="accordion-inner">
-                            Enter a key domain or select an existing tModel Key Generator. We'll make one if it doesn't exist<br>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step2a")%>
+                            <br>
                             <input type="text" id="keydomain" placeholder="autofilled from the URL">
                         </div>
                     </div>
@@ -192,16 +199,35 @@
                 <div class="accordion-group">
                     <div class="accordion-heading">
                         <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapse3">
-                            Step 3)   Business Selection
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step3")%>
+
                         </a>
                     </div>
                     <div id="collapse3" class="accordion-body collapse">
                         <div class="accordion-inner">
-                            Create a new one or use an existing one
-                            <br>
-                            Business Chooser or enter a new business name<br>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step3a")%><br>
+                            <a href="javascript:loadBusinessModel();"><i class="icon-list-alt icon-large"></i> <%=ResourceLoader.GetResource(session, "items.picker")%></a>
 
-                            <input type="text" id="businessname" placeholder="Business Key">
+                            <script type="text/javascript">
+                                function loadBusinessModel()
+                                {
+                                    reloadBusinessModal();
+                                    $.dialogBusiness.confirm({
+                                        callback: function(success, result) {
+                                            if (success)
+                                            {
+                                                for (var i=0;i<result.length;i++){
+                                                    $("#businessname").val(result[i]);
+                                                    //if ($("#keylist option[value='"+result[i]+"']").length == 0)
+                                                    //$("#keylist").append("<option value=\"" + result[i] + "\">" + result[i] + "</option>");
+                                                }
+                                                
+                                            }
+                                        }
+                                    });
+                                }
+                            </script>
+                            <input type="text" id="businessname" placeholder="Business Key or a new Business Name">
                         </div>
                     </div>
                 </div>
@@ -210,15 +236,17 @@
                 <div class="accordion-group">
                     <div class="accordion-heading">
                         <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapse4">
-                            Step 4) Review and Approve</a>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step4")%>
+                        </a>
                     </div>
                     <div id="collapse4" class="accordion-body collapse">
                         <div class="accordion-inner">
-                            Preview the new items and continue. Don't worry, you can always change these values later
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step4a")%>
+
                             <Br><br>
                             <div id="preview"></div>
-                            <a class="btn btn-info" onclick="preview();"><i class="icon-eye-open icon-large"></i> Preview</a>
-                            <a class="btn btn-primary" href="#"><i class="icon-save icon-large"></i> Approve</a>
+                            <a class="btn btn-info" onclick="preview(true);"><i class="icon-eye-open icon-large"></i> <%=ResourceLoader.GetResource(session, "actions.preview")%></a>
+                            <a class="btn btn-primary" onclick="preview(false);"><i class="icon-save icon-large"></i>  <%=ResourceLoader.GetResource(session, "actions.save")%></a>
                         </div>
                     </div>
                 </div>
@@ -230,5 +258,5 @@
         </div>
     </div>
 
-
+    <%@include file="businessChooser.jsp" %>
     <%@include file="header-bottom.jsp" %>
\ No newline at end of file

Modified: juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp?rev=1502644&r1=1502643&r2=1502644&view=diff
==============================================================================
--- juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp (original)
+++ juddi/trunk/juddi-gui/src/main/webapp/importFromWsdl.jsp Fri Jul 12 18:31:26 2013
@@ -1,6 +1,6 @@
 <%-- 
-    Document   : importFromWsdl
-    Created on : May 10, 2013, 6:52:05 PM
+    Document   : importFromWadl
+    Created on : July 11, 2013, 6:52:05 PM
     Author     : Alex O'Ree
 --%>
 
@@ -16,14 +16,14 @@
 
     <!-- Main hero unit for a primary marketing message or call to action -->
     <div class="well" >
-        <h1><%=ResourceLoader.GetResource(session, "navbar.create.serviceimport")%></h1>
+        <h1><%=ResourceLoader.GetResource(session, "navbar.create.serviceimport.wadl")%></h1>
 
     </div>
 
     <!-- Example row of columns -->
     <div class="row">
         <div class="span12" >
-            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content")%>
+            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.wadl")%>
             <Br>
             <br>
 
@@ -31,31 +31,28 @@
                 <div class="accordion-group">
                     <div class="accordion-heading">
                         <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapse1">
-                            Step 1)    WSDL Location and Credentials
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step1.wadl")%>
                         </a>
                     </div>
                     <div id="collapse1" class="accordion-body collapse in">
                         <div class="accordion-inner">
-                            The first step is to tell us where we can find the Web Service Description Language (WSDL) document that
-                            describes your services' operations, inputs and outputs and execution URLs. If you don't know where to find it
-                            you can usually add a '?wsdl' to the end of the URL to the service. WSDLs are XML documents.<br>
-                            <input type="text" id="wsdlurl" placeholder="http://localhost:8080/services/myService?wsdl" style="width:100%" ><br>
-                            Sometimes, access to the WSDL file is restricted by a username and password, if this is the case, enter
-                            your credentials here. It won't be saved anywhere.<br>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step1a.wadl")%><br>
+                            <input type="text" id="wsdlurl" placeholder="http://localhost:8080/services/myService?wadl" style="width:100%" ><br>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step1b")%><br>
                             <%
                                 if (!request.isSecure()) {
                             %>
                             <div class="alert alert-error">
                                 <button type="button" class="close" data-dismiss="alert">&times;</button>
-                                <h4><i class="icon-warning-sign"></i> Warning!</h4>
-                                Please consider switching to a secure connection such as SSL or TLS (the address bar starts with https://), 
-                                otherwise your password may be exposed.
+                                <h4><i class="icon-warning-sign"></i> <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.sslwarning")%></h4>
+                                <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.usessl")%>
+
                             </div>
                             <%                                }
                             %>
-                            <input type="text" id="wsdlusername" placeholder="username (optional)" ><br>
-                            <input type="text" id="wsdlpassword" placeholder="password (optional)" ><br>
-                            <input type="checkbox" id="wsdlignoressl" > Ignore SSL Errors<br>
+                            <input type="text" id="wsdlusername" placeholder="<%=ResourceLoader.GetResource(session, "navbar.login.username")%> <%=ResourceLoader.GetResource(session, "items.optional")%>" ><br>
+                            <input type="text" id="wsdlpassword" placeholder="<%=ResourceLoader.GetResource(session, "navbar.login.password")%> <%=ResourceLoader.GetResource(session, "items.optional")%>" ><br>
+                            <input type="checkbox" id="wsdlignoressl" > <%=ResourceLoader.GetResource(session, "items.ignoresslerror")%><br>
                         </div>
                     </div>
                 </div>
@@ -102,18 +99,27 @@
                         $("#collapse2").collapse('show');
                     }
                     
-                    function preview()
+                    function save(preview)
                     {
                         var postbackdata = new Array();
-                        var url='ajax/importFromWsdl.jsp';
+                        var url='ajax/importFromWadl.jsp';
                         postbackdata.push({
                             name:"nonce", 
                             value: $("#nonce").val()
                         });
-                        postbackdata.push({
-                            name:"formaction", 
-                            value: "preview"
-                        });
+                        if (preview){
+                            postbackdata.push({
+                                name:"formaction", 
+                                value: "preview"
+                            });
+                        }
+                        else
+                        {
+                            postbackdata.push({
+                                name:"formaction", 
+                                value: "save"
+                            });
+                        }
                         postbackdata.push({
                             name:"wsdlusername", 
                             value: $("#wsdlusername").val()
@@ -178,12 +184,13 @@
                 <div class="accordion-group">
                     <div class="accordion-heading">
                         <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapse2" onclick="trigger1();">
-                            Step 2)  Key Domain
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step2")%>
                         </a>
                     </div>
                     <div id="collapse2" class="accordion-body collapse">
                         <div class="accordion-inner">
-                            Enter a key domain or select an existing tModel Key Generator. We'll make one if it doesn't exist<br>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step2a")%>
+                            <br>
                             <input type="text" id="keydomain" placeholder="autofilled from the URL">
                         </div>
                     </div>
@@ -192,16 +199,35 @@
                 <div class="accordion-group">
                     <div class="accordion-heading">
                         <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapse3">
-                            Step 3)   Business Selection
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step3")%>
+
                         </a>
                     </div>
                     <div id="collapse3" class="accordion-body collapse">
                         <div class="accordion-inner">
-                            Create a new one or use an existing one
-                            <br>
-                            Business Chooser or enter a new business name<br>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step3a")%><br>
+                            <a href="javascript:loadBusinessModel();"><i class="icon-list-alt icon-large"></i> <%=ResourceLoader.GetResource(session, "items.picker")%></a>
 
-                            <input type="text" id="businessname" placeholder="Business Key">
+                            <script type="text/javascript">
+                                function loadBusinessModel()
+                                {
+                                    reloadBusinessModal();
+                                    $.dialogBusiness.confirm({
+                                        callback: function(success, result) {
+                                            if (success)
+                                            {
+                                                for (var i=0;i<result.length;i++){
+                                                    $("#businessname").val(result[i]);
+                                                    //if ($("#keylist option[value='"+result[i]+"']").length == 0)
+                                                    //$("#keylist").append("<option value=\"" + result[i] + "\">" + result[i] + "</option>");
+                                                }
+                                                
+                                            }
+                                        }
+                                    });
+                                }
+                            </script>
+                            <input type="text" id="businessname" placeholder="Business Key or a new Business Name">
                         </div>
                     </div>
                 </div>
@@ -210,15 +236,17 @@
                 <div class="accordion-group">
                     <div class="accordion-heading">
                         <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapse4">
-                            Step 4) Review and Approve</a>
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step4")%>
+                        </a>
                     </div>
                     <div id="collapse4" class="accordion-body collapse">
                         <div class="accordion-inner">
-                            Preview the new items and continue. Don't worry, you can always change these values later
+                            <%=ResourceLoader.GetResource(session, "pages.serviceimport.content.step4a")%>
+
                             <Br><br>
                             <div id="preview"></div>
-                            <a class="btn btn-info" onclick="preview();"><i class="icon-eye-open icon-large"></i> Preview</a>
-                            <a class="btn btn-primary" href="#"><i class="icon-save icon-large"></i> Approve</a>
+                            <a class="btn btn-info" onclick="javascript:save(true);"><i class="icon-eye-open icon-large"></i> <%=ResourceLoader.GetResource(session, "actions.preview")%></a>
+                            <a class="btn btn-primary" onclick="javascript:save(false);"><i class="icon-save icon-large"></i>  <%=ResourceLoader.GetResource(session, "actions.save")%></a>
                         </div>
                     </div>
                 </div>
@@ -230,5 +258,5 @@
         </div>
     </div>
 
-
+    <%@include file="businessChooser.jsp" %>
     <%@include file="header-bottom.jsp" %>
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org