| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| package org.netbeans.modules.payara.jakartaee; |
| |
| import java.beans.FeatureDescriptor; |
| import java.beans.PropertyChangeListener; |
| import java.io.File; |
| import java.io.IOException; |
| import java.util.ArrayList; |
| import java.util.Enumeration; |
| import java.util.HashMap; |
| import java.util.Iterator; |
| import java.util.List; |
| import java.util.Map; |
| import java.util.Vector; |
| import java.util.logging.Level; |
| import java.util.logging.Logger; |
| import org.netbeans.modules.xml.api.model.GrammarEnvironment; |
| import org.netbeans.modules.xml.api.model.GrammarQuery; |
| import org.openide.util.NbBundle; |
| import org.w3c.dom.Element; |
| import org.w3c.dom.Node; |
| import org.netbeans.modules.xml.api.model.DTDUtil; |
| import org.netbeans.api.xml.services.UserCatalog; |
| import org.netbeans.modules.xml.api.model.GrammarQueryManager; |
| import org.netbeans.modules.xml.catalog.spi.CatalogDescriptor2; |
| import org.netbeans.modules.xml.catalog.spi.CatalogListener; |
| import org.netbeans.modules.xml.catalog.spi.CatalogReader; |
| import org.netbeans.spi.server.ServerInstanceProvider; |
| import org.xml.sax.EntityResolver; |
| import org.xml.sax.InputSource; |
| import org.xml.sax.SAXException; |
| |
| |
| /** Catalog for Payara DTDs that enables completion support in editor. |
| * This is basically a copy of the class in org.netbeans.modules.j2ee.sun.ide.j2ee |
| * with a few changes for maintaining 2 instances and for getting the root in a |
| * slightly different way. |
| * |
| * @author Ludo |
| */ |
| |
| public class RunTimeDDCatalog extends GrammarQueryManager implements CatalogReader, CatalogDescriptor2,org.xml.sax.EntityResolver { |
| |
| private static final String XML_XSD="http://www.w3.org/2001/xml.xsd"; // NOI18N |
| private static final String XML_XSD_DEF="<?xml version='1.0'?><xs:schema targetNamespace=\"http://www.w3.org/XML/1998/namespace\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xml:lang=\"en\"><xs:attribute name=\"lang\" type=\"xs:language\"><xs:annotation><xs:documentation>In due course, we should install the relevant ISO 2- and 3-letter codes as the enumerated possible values . . .</xs:documentation></xs:annotation></xs:attribute></xs:schema>"; // NOI18N |
| private static final String TypeToURLMap[] = { |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 J2EE Application 1.3//EN" , "sun-application_1_3-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 8.0 J2EE Application 1.4//EN" , "sun-application_1_4-0.dtd" , ///[THIS IS DEPRECATED] |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.0 J2EE Application 1.4//EN" , "sun-application_1_4-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.1 J2EE Application 1.4//EN" , "sun-application_1_4-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Java EE Application 5.0//EN" , "sun-application_5_0-0.dtd", |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 EJB 2.0//EN" , "sun-ejb-jar_2_0-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 8.0 EJB 2.1//EN" , "sun-ejb-jar_2_1-0.dtd" , ///[THIS IS DEPRECATED] |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.0 EJB 2.1//EN" , "sun-ejb-jar_2_1-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.1 EJB 2.1//EN" , "sun-ejb-jar_2_1-1.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 9.0 EJB 3.0//EN" , "sun-ejb-jar_3_0-0.dtd", |
| "-//Sun Microsystems, Inc.//DTD Application Server 9.1.1 EJB 3.0//EN" , "sun-ejb-jar_3_0-1.dtd", |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 Application Client 1.3//EN" , "sun-application-client_1_3-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 8.0 Application Client 1.4//EN" , "sun-application-client_1_4-0.dtd" , ///[THIS IS DEPRECATED] |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.0 Application Client 1.4//EN" , "sun-application-client_1_4-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.1 Application Client 1.4//EN" , "sun-application-client_1_4-1.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Application Client 5.0//EN" , "sun-application-client_5_0-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 Connector 1.0//EN" , "sun-connector_1_0-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Connector 1.5//EN" , "sun-connector_1_5-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 Servlet 2.3//EN" , "sun-web-app_2_3-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 8.0 Servlet 2.4//EN" , "sun-web-app_2_4-0.dtd" , ///[THIS IS DEPRECATED] |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.0 Servlet 2.4//EN" , "sun-web-app_2_4-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Web Server 6.1 Servlet 2.3//EN" , "sun-web-app_2_3-1.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.1 Servlet 2.4//EN" , "sun-web-app_2_4-1.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Servlet 2.5//EN" , "sun-web-app_2_5-0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 Application Client Container 1.0//EN" , "sun-application-client-container_1_0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 OR Mapping //EN" , "sun-cmp-mapping_1_0.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.0 OR Mapping//EN" , "sun-cmp-mapping_1_1.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.1 OR Mapping//EN" , "sun-cmp-mapping_1_2.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.0 Domain//EN" , "sun-domain_1_0.dtd" , |
| "-//Sun Microsystems Inc.//DTD Application Server 8.0 Application Client Container//EN" , "sun-application-client-container_1_2.dtd" , |
| "-//Sun Microsystems, Inc.//DTD Application Server 8.1 Application Client Container //EN" , "sun-application-client-container_1_1.dtd" , |
| "-//Sun Microsystems Inc.//DTD Application Server 8.0 Domain//EN" ,"sun-domain_1_1.dtd", |
| "-//Sun Microsystems Inc.//DTD Application Server 8.1 Domain//EN" ,"sun-domain_1_1.dtd", |
| "-//Sun Microsystems Inc.//DTD Application Server 9.0 Domain//EN" ,"sun-domain_1_2.dtd", |
| "-//Sun Microsystems Inc.//DTD Application Server 9.1 Domain//EN" ,"sun-domain_1_3.dtd", |
| "-//Sun Microsystems Inc.//DTD GlassFish Communications Server 1.5 Domain//EN" ,"sun-domain_1_4.dtd", |
| "-//Sun Microsystems Inc.//DTD GlassFish Communications Server 2.0 Domain//EN" ,"sun-domain_1_5.dtd", |
| "-//Sun Microsystems, Inc.//DTD Application Server 9.0 SIP Servlet 1.1//EN" , "sun-sip-app_1_1-0.dtd", |
| |
| "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" , "application_1_3.dtd", |
| "-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN" , "application_1_2.dtd", |
| "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" , "ejb-jar_2_0.dtd", |
| "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN" , "ejb-jar_1_1.dtd", |
| "-//Sun Microsystems, Inc.//DTD J2EE Application Client 1.3//EN" , "application-client_1_3.dtd", |
| "-//Sun Microsystems, Inc.//DTD J2EE Application Client 1.2//EN" , "application-client_1_2.dtd", |
| "-//Sun Microsystems, Inc.//DTD Connector 1.0//EN" , "connector_1_0.dtd", |
| "-//Java Community Process//DTD SIP Application 1.0//EN" , "sip-app_1_0.dtd", |
| "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" , "web-app_2_3.dtd", |
| "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" , "web-app_2_2.dtd", |
| "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" , "web-jsptaglibrary_1_2.dtd", |
| "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" , "web-jsptaglibrary_1_1.dtd", |
| }; |
| |
| private static final String JavaEE6TypeToURLMap[] = { |
| "-//Sun Microsystems, Inc.//DTD GlassFish Application Server 3.0 Java EE Application 6.0//EN" , "sun-application_6_0-0.dtd", |
| "-//GlassFish.org//DTD GlassFish Application Server 3.1 Java EE Application 6.0//EN" , "glassfish-application_6_0-1.dtd", |
| "-//Sun Microsystems, Inc.//DTD GlassFish Application Server 3.0 Application Client 6.0//EN" , "sun-application-client_6_0-0.dtd" , |
| "-//GlassFish.org//DTD GlassFish Application Server 3.1 Java EE Application Client 6.0//EN" , "glassfish-application-client_6_0-1.dtd" , |
| "-//Sun Microsystems, Inc.//DTD GlassFish Application Server 3.0 EJB 3.1//EN" , "sun-ejb-jar_3_1-0.dtd", |
| "-//GlassFish.org//DTD GlassFish Application Server 3.1 EJB 3.1//EN" , "glassfish-ejb-jar_3_1-1.dtd", |
| "-//Sun Microsystems, Inc.//DTD GlassFish Application Server 3.0 Servlet 3.0//EN" , "sun-web-app_3_0-0.dtd" , |
| "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" , "glassfish-web-app_3_0-1.dtd" , |
| "-//GlassFish.org//DTD GlassFish Application Server 3.1 Resource Definitions //EN", "glassfish-resources_1_5.dtd", |
| "-//GlassFish.org//DTD GlassFish Application Server 3.1 Resource Definitions//EN", "glassfish-resources_1_5.dtd", |
| "-//Payara.fish//DTD Payara Server 4 Servlet 3.0//EN", "payara-web-app_4.dtd" |
| }; |
| |
| /*******NetBeans 3.6 is NOT ready yet to support schemas for code completion... What a pity!: */ |
| private static final String SchemaToURLMap[] = { |
| |
| "SCHEMA:http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd" , "ejb-jar_2_1", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" , "ejb-jar_3_0", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd" , "ejb-jar_3_1", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd" , "ejb-jar_3_2", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/ejb-jar_4_0.xsd" , "ejb-jar_4_0", |
| "SCHEMA:http://java.sun.com/xml/ns/j2ee/application-client_1_4.xsd" , "application-client_1_4", |
| "SCHEMA:http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" , "application_1_4", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/application-client_5.xsd" , "application-client_5", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/application_5.xsd" , "application_5", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/application-client_6.xsd" , "application-client_6", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/application_6.xsd" , "application_6", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/javaee/application-client_7.xsd" , "application-client_7", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd" , "application_7", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/javaee/application-client_8.xsd" , "application-client_8", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/javaee/application_8.xsd" , "application_8", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/application-client_9.xsd" , "application-client_9", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/application_9.xsd" , "application_9", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/application-client_10.xsd" , "application-client_10", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/application_10.xsd" , "application_10", |
| "SCHEMA:http://java.sun.com/xml/ns/j2ee/jax-rpc-ri-config.xsd" , "jax-rpc-ri-config", |
| "SCHEMA:http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd" , "connector_1_5", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/connector_1_6.xsd" , "connector_1_6", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/javaee/connector_1_7.xsd" , "connector_1_7", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/connector_2_0.xsd" , "connector_2_0", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/connector_2_1.xsd" , "connector_2_1", |
| ///"SCHEMA:http://java.sun.com/xml/ns/j2ee/jsp_2_0.xsd" , "jsp_2_0.xsd", |
| ///"SCHEMA:http://java.sun.com/xml/ns/j2ee/datatypes.dtd" , "datatypes", |
| ///"SCHEMA:http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" , "web-app_2_4", |
| ///"SCHEMA:http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" , "web-jsptaglibrary_2_0", |
| ///"SCHEMA:http://java.sun.com/xml/ns/j2ee/j2ee_1_4.xsd" , "j2ee_1_4", |
| "SCHEMA:http://java.sun.com/xml/ns/j2ee/j2ee_jaxrpc_mapping_1_1.xsd" , "j2ee_jaxrpc_mapping_1_1", |
| "SCHEMA:http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd" ,"j2ee_web_services_1_1", |
| "SCHEMA:http://java.sun.com/xml/ns/j2ee/j2ee_web_services_client_1_1.xsd" ,"j2ee_web_services_client_1_1", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/javaee_web_services_1_2.xsd" ,"javaee_web_services_1_2", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/javaee_web_services_client_1_2.xsd" ,"javaee_web_services_client_1_2", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/javaee_web_services_1_3.xsd" ,"javaee_web_services_1_3", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/javaee_web_services_client_1_3.xsd" ,"javaee_web_services_client_1_3", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/javaee/javaee_web_services_1_4.xsd" ,"javaee_web_services_1_4", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/javaee/javaee_web_services_client_1_4.xsd" ,"javaee_web_services_client_1_4", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/jakartaee_web_services_2_0.xsd" ,"jakartaee_web_services_2_0", |
| "SCHEMA:https://jakarta.ee/xml/ns/jakartaee/jakartaee_web_services_client_2_0.xsd" ,"jakartaee_web_services_client_2_0", |
| "SCHEMA:http://java.sun.com/xml/ns/persistence/orm_1_0.xsd" , "orm_1_0", |
| "SCHEMA:http://java.sun.com/xml/ns/persistence/orm_2_0.xsd" , "orm_2_0", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/persistence/orm_2_1.xsd" , "orm_2_1", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/persistence/orm_2_2.xsd" , "orm_2_2", |
| "SCHEMA:https://jakarta.ee/xml/ns/persistence/orm/orm_3_0.xsd" , "orm_3_0", |
| "SCHEMA:https://jakarta.ee/xml/ns/persistence/orm/orm_3_1.xsd" , "orm_3_1", |
| "SCHEMA:http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" , "persistence_1_0", |
| "SCHEMA:http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" , "persistence_2_0", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd" , "persistence_2_1", |
| "SCHEMA:http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd" , "persistence_2_2", |
| "SCHEMA:https://jakarta.ee/xml/ns/persistence/persistence_3_0.xsd" , "persistence_3_0", |
| }; |
| |
| private static final String JavaEE6SchemaToURLMap[] = { |
| |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd" , "ejb-jar_3_1", |
| "SCHEMA:http://java.sun.com/xml/ns/j2ee/jsp_2_2.xsd" , "jsp_2_2", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" , "web-app_3_0", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/web-common_3_0.xsd" , "web-common_3_0", |
| "SCHEMA:http://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd" , "web-fragment_3_0", |
| "SCHEMA:http://xmlns.oracle.com/weblogic/jdbc-data-source/1.0/jdbc-data-source.xsd", "jdbc-data-source", |
| }; |
| |
| private static Map<ServerInstanceProvider, RunTimeDDCatalog> ddCatalogMap = new HashMap<>(); |
| // private static RunTimeDDCatalog preludeDDCatalog; |
| private static RunTimeDDCatalog defaultDDCatalog; |
| |
| private File platformRootDir=null; |
| private String displayNameKey; |
| private String shortDescriptionKey; |
| private boolean hasAdditionalMap = false; |
| |
| /** Creates a new instance of RunTimeDDCatalog */ |
| public RunTimeDDCatalog() { |
| } |
| |
| public void setInstanceProvider(ServerInstanceProvider ip) { |
| if (ddCatalogMap.get(ip) == null) { |
| ddCatalogMap.put(ip, this); |
| } |
| } |
| /** Factory method providing catalog for XML completion of DD */ |
| public static RunTimeDDCatalog getRunTimeDDCatalog(ServerInstanceProvider ip){ |
| return ddCatalogMap.get(ip); |
| } |
| |
| /** Factory method providing catalog for XML completion of DD */ |
| public static synchronized RunTimeDDCatalog getDefaultRunTimeDDCatalog(){ |
| if (defaultDDCatalog==null) { |
| defaultDDCatalog = new RunTimeDDCatalog(); |
| defaultDDCatalog.displayNameKey = "LBL_RunTimeDDCatalog"; // NOI18N |
| defaultDDCatalog.shortDescriptionKey = "DESC_RunTimeDDCatalog"; // NOI18N |
| defaultDDCatalog.hasAdditionalMap = true; |
| } |
| return defaultDDCatalog; |
| } |
| |
| /** |
| * Get String iterator representing all public IDs registered in catalog. |
| * @return null if cannot proceed, try later. |
| */ |
| @Override |
| public Iterator getPublicIDs() { |
| if (platformRootDir == null) { |
| return null; |
| } |
| if (!platformRootDir.exists()) { |
| return null; |
| } |
| |
| String installRoot = platformRootDir.getAbsolutePath(); |
| if (installRoot == null) { |
| return null; |
| } |
| |
| List<String> list = new ArrayList<>(); |
| for (int i=0;i<TypeToURLMap.length;i = i+2){ |
| list.add(TypeToURLMap[i]); |
| } |
| if (hasAdditionalMap) { |
| for (int i=0;i<JavaEE6TypeToURLMap.length;i = i+2){ |
| list.add(JavaEE6TypeToURLMap[i]); |
| } |
| } |
| for (int i=0;i<SchemaToURLMap.length;i = i+2){ |
| list.add(SchemaToURLMap[i]); |
| } |
| if (hasAdditionalMap) { |
| for (int i=0;i<JavaEE6SchemaToURLMap.length;i = i+2){ |
| list.add(JavaEE6SchemaToURLMap[i]); |
| } |
| } |
| |
| return list.listIterator(); |
| } |
| |
| /** |
| * Get registered systemid for given public Id or null if not registered. |
| * @return null if not registered |
| */ |
| @Override |
| public String getSystemID(String publicId) { |
| if (platformRootDir == null) { |
| return null; |
| } |
| if (!platformRootDir.exists()) { |
| return null; |
| } |
| |
| String installRoot = platformRootDir.getAbsolutePath(); //System.getProperty("com.sun.aas.installRoot"); |
| if (installRoot == null) { |
| return null; |
| } |
| String loc="dtds"; |
| for (int i=0;i<TypeToURLMap.length;i = i+2){ |
| if (TypeToURLMap[i].equals(publicId)){ |
| File file = new File(installRoot+"/lib/"+loc+"/"+TypeToURLMap[i+1]); |
| try{ |
| return file.toURI().toURL().toExternalForm(); |
| }catch(Exception e){ |
| Logger.getLogger("payara-jakartaee").log(Level.INFO, file.getAbsolutePath(), e); // NOI18N |
| return ""; |
| } |
| } |
| } |
| if (hasAdditionalMap) { |
| for (int i=0;i<JavaEE6TypeToURLMap.length;i = i+2){ |
| if (JavaEE6TypeToURLMap[i].equals(publicId)){ |
| File file = new File(installRoot+"/lib/"+loc+"/"+JavaEE6TypeToURLMap[i+1]); |
| try{ |
| return file.toURI().toURL().toExternalForm(); |
| }catch(Exception e){ |
| Logger.getLogger("payara-jakartaee").log(Level.INFO, file.getAbsolutePath(), e); // NOI18N |
| return ""; |
| } |
| } |
| } |
| } |
| loc="schemas"; |
| for (int i=0;i<SchemaToURLMap.length;i = i+2){ |
| if (SchemaToURLMap[i].equals(publicId)){ |
| File file = new File(installRoot+"/lib/"+loc+"/"+SchemaToURLMap[i+1]); |
| try{ |
| return file.toURI().toURL().toExternalForm(); |
| }catch(Exception e){ |
| Logger.getLogger("payara-jakartaee").log(Level.INFO, file.getAbsolutePath(), e); // NOI18N |
| return ""; |
| } |
| } |
| } |
| if (hasAdditionalMap) { |
| for (int i=0;i<JavaEE6SchemaToURLMap.length;i = i+2){ |
| if (JavaEE6SchemaToURLMap[i].equals(publicId)){ |
| |
| // xsds are in the server and NB can now use them for code completion |
| // old code required dtds and would have done something like this: |
| // return "nbres:/org/netbeans/modules/j2ee/sun/ide/resources/"+JavaEE6SchemaToURLMap[i+1]+".dtd"; |
| // because before NB could use xsd for code completion, the module had a |
| // hacked copy of the dtd to deal with that |
| File file = new File(installRoot+"/lib/"+loc+"/"+JavaEE6SchemaToURLMap[i+1]+".xsd"); |
| try{ |
| return file.toURI().toURL().toExternalForm(); |
| }catch(Exception e){ |
| Logger.getLogger("payara-jakartaee").log(Level.INFO, file.getAbsolutePath(), e); // NOI18N |
| return ""; |
| } |
| } |
| } |
| } |
| return null; |
| } |
| |
| /** |
| * Refresh content according to content of mounted catalog. |
| */ |
| @Override |
| public void refresh() { |
| fireCatalogListeners(); |
| } |
| |
| /** |
| * Refresh content according to content of mounted catalog. |
| */ |
| public void refresh(File newLoc) { |
| if (platformRootDir!=newLoc){ |
| platformRootDir = newLoc; |
| refresh(); |
| } |
| |
| } |
| |
| private List<CatalogListener> catalogListeners = new ArrayList<>(1); |
| |
| /** |
| * Optional operation allowing to listen at catalog for changes. |
| * @throws UnsupportedOpertaionException if not supported by the implementation. |
| */ |
| @Override |
| public void addCatalogListener(CatalogListener l) { |
| if (null == l) |
| return; |
| if (catalogListeners.contains(l)) |
| return; |
| catalogListeners.add(l); |
| } |
| |
| /** |
| * Optional operation couled with addCatalogListener. |
| * @throws UnsupportedOpertaionException if not supported by the implementation. |
| */ |
| @Override |
| public void removeCatalogListener(CatalogListener l) { |
| if (null == l) |
| return; |
| catalogListeners.remove(l); |
| } |
| |
| public void fireCatalogListeners() { |
| Iterator<CatalogListener> iter = catalogListeners.iterator(); |
| while (iter.hasNext()) { |
| CatalogListener l = iter.next(); |
| l.notifyInvalidate(); |
| } |
| } |
| |
| /** Registers new listener. */ |
| @Override |
| public void addPropertyChangeListener(PropertyChangeListener l) { |
| } |
| |
| /** |
| * @return I18N display name |
| */ |
| @Override |
| public String getDisplayName() { |
| return NbBundle.getMessage(RunTimeDDCatalog.class, displayNameKey); |
| } |
| |
| /** |
| * Return visuaized state of given catalog. |
| * @param type of icon defined by JavaBeans specs |
| * @return icon representing current state or null |
| */ |
| @Override |
| public String getIconResource(int type) { |
| return "org/netbeans/modules/payara/javaee/resources/server.png"; // NOI18N |
| } |
| |
| /** |
| * @return I18N short description |
| */ |
| @Override |
| public String getShortDescription() { |
| return NbBundle.getMessage(RunTimeDDCatalog.class, shortDescriptionKey); |
| } |
| |
| /** Unregister the listener. */ |
| @Override |
| public void removePropertyChangeListener(java.beans.PropertyChangeListener l) { |
| } |
| |
| public static final String J2EE_NS = "http://java.sun.com/xml/ns/j2ee"; // NOI18N |
| public static final String JAVAEE_NS = "http://java.sun.com/xml/ns/javaee"; // NOI18N |
| public static final String NEW_JAVAEE_NS = "http://xmlns.jcp.org/xml/ns/javaee"; // NOI18N |
| public static final String JAKARTAEE_NS = "https://jakarta.ee/xml/ns/jakartaee"; // NOI18N |
| public static final String RI_CONFIG_NS = "http://java.sun.com/xml/ns/jax-rpc/ri/config"; // NOI18N |
| |
| public static final String IBM_J2EE_NS = "http://www.ibm.com/webservices/xsd"; // NOI18N |
| private static final String XMLNS_ATTR="xmlns"; //NOI18N |
| // public org.xml.sax.InputSource resolveEntity(String publicId, String systemId) throws org.xml.sax.SAXException, java.io.IOException { |
| // return null; |
| // } |
| private static final String EJB_JAR_TAG="ejb-jar"; //NOI18N |
| private static final String EJBJAR_2_1_XSD="ejb-jar_2_1.xsd"; // NOI18N |
| private static final String EJBJAR_2_1 = J2EE_NS+"/"+EJBJAR_2_1_XSD; // NOI18N |
| public static final String EJBJAR_2_1_ID = "SCHEMA:"+EJBJAR_2_1; // NOI18N |
| |
| private static final String EJBJAR_3_0_XSD="ejb-jar_3_0.xsd"; // NOI18N |
| private static final String EJBJAR_3_0 = JAVAEE_NS+"/"+EJBJAR_3_0_XSD; // NOI18N |
| public static final String EJBJAR_3_0_ID = "SCHEMA:"+EJBJAR_3_0; // NOI18N |
| |
| private static final String EJBJAR_3_1_XSD="ejb-jar_3_1.xsd"; // NOI18N |
| private static final String EJBJAR_3_1 = JAVAEE_NS+"/"+EJBJAR_3_1_XSD; // NOI18N |
| public static final String EJBJAR_3_1_ID = "SCHEMA:"+EJBJAR_3_1; // NOI18N |
| |
| private static final String EJBJAR_3_2_XSD="ejb-jar_3_2.xsd"; // NOI18N |
| private static final String EJBJAR_3_2 = NEW_JAVAEE_NS+"/"+EJBJAR_3_2_XSD; // NOI18N |
| public static final String EJBJAR_3_2_ID = "SCHEMA:"+EJBJAR_3_2; // NOI18N |
| |
| private static final String EJBJAR_4_0_XSD="ejb-jar_4_0.xsd"; // NOI18N |
| private static final String EJBJAR_4_0 = JAKARTAEE_NS+"/"+EJBJAR_4_0_XSD; // NOI18N |
| public static final String EJBJAR_4_0_ID = "SCHEMA:"+EJBJAR_4_0; // NOI18N |
| |
| private static final String APP_TAG="application"; //NOI18N |
| private static final String APP_1_4_XSD="application_1_4.xsd"; // NOI18N |
| private static final String APP_1_4= J2EE_NS+"/"+APP_1_4_XSD; // NOI18N |
| public static final String APP_1_4_ID = "SCHEMA:"+APP_1_4; // NOI18N |
| |
| private static final String APP_5_XSD="application_5.xsd"; // NOI18N |
| private static final String APP_5= JAVAEE_NS+"/"+APP_5_XSD; // NOI18N |
| public static final String APP_5_ID = "SCHEMA:"+APP_5; // NOI18N |
| |
| private static final String APP_6_XSD="application_6.xsd"; // NOI18N |
| private static final String APP_6= JAVAEE_NS+"/"+APP_6_XSD; // NOI18N |
| public static final String APP_6_ID = "SCHEMA:"+APP_6; // NOI18N |
| |
| private static final String APP_7_XSD="application_7.xsd"; // NOI18N |
| private static final String APP_7= NEW_JAVAEE_NS+"/"+APP_7_XSD; // NOI18N |
| public static final String APP_7_ID = "SCHEMA:"+APP_7; // NOI18N |
| |
| private static final String APP_8_XSD="application_8.xsd"; // NOI18N |
| private static final String APP_8= NEW_JAVAEE_NS+"/"+APP_8_XSD; // NOI18N |
| public static final String APP_8_ID = "SCHEMA:"+APP_8; // NOI18N |
| |
| private static final String APP_9_XSD="application_9.xsd"; // NOI18N |
| private static final String APP_9= JAKARTAEE_NS+"/"+APP_9_XSD; // NOI18N |
| public static final String APP_9_ID = "SCHEMA:"+APP_9; // NOI18N |
| |
| private static final String APP_10_XSD="application_10.xsd"; // NOI18N |
| private static final String APP_10= JAKARTAEE_NS+"/"+APP_10_XSD; // NOI18N |
| public static final String APP_10_ID = "SCHEMA:"+APP_10; // NOI18N |
| |
| private static final String APPCLIENT_TAG="application-client"; //NOI18N |
| private static final String APPCLIENT_1_4_XSD="application-client_1_4.xsd"; // NOI18N |
| private static final String APPCLIENT_1_4= J2EE_NS+"/"+APPCLIENT_1_4_XSD; // NOI18N |
| public static final String APPCLIENT_1_4_ID = "SCHEMA:"+APPCLIENT_1_4; // NOI18N |
| |
| private static final String APPCLIENT_5_XSD="application-client_5.xsd"; // NOI18N |
| private static final String APPCLIENT_5= JAVAEE_NS+"/"+APPCLIENT_5_XSD; // NOI18N |
| public static final String APPCLIENT_5_ID = "SCHEMA:"+APPCLIENT_5; // NOI18N |
| |
| private static final String APPCLIENT_6_XSD="application-client_6.xsd"; // NOI18N |
| private static final String APPCLIENT_6= JAVAEE_NS+"/"+APPCLIENT_6_XSD; // NOI18N |
| public static final String APPCLIENT_6_ID = "SCHEMA:"+APPCLIENT_6; // NOI18N |
| |
| private static final String APPCLIENT_7_XSD="application-client_7.xsd"; // NOI18N |
| private static final String APPCLIENT_7= NEW_JAVAEE_NS+"/"+APPCLIENT_7_XSD; // NOI18N |
| public static final String APPCLIENT_7_ID = "SCHEMA:"+APPCLIENT_7; // NOI18N |
| |
| private static final String APPCLIENT_8_XSD="application-client_8.xsd"; // NOI18N |
| private static final String APPCLIENT_8= NEW_JAVAEE_NS+"/"+APPCLIENT_8_XSD; // NOI18N |
| public static final String APPCLIENT_8_ID = "SCHEMA:"+APPCLIENT_8; // NOI18N |
| |
| private static final String APPCLIENT_9_XSD="application-client_9.xsd"; // NOI18N |
| private static final String APPCLIENT_9= JAKARTAEE_NS+"/"+APPCLIENT_9_XSD; // NOI18N |
| public static final String APPCLIENT_9_ID = "SCHEMA:"+APPCLIENT_9; // NOI18N |
| |
| private static final String APPCLIENT_10_XSD="application-client_10.xsd"; // NOI18N |
| private static final String APPCLIENT_10= JAKARTAEE_NS+"/"+APPCLIENT_10_XSD; // NOI18N |
| public static final String APPCLIENT_10_ID = "SCHEMA:"+APPCLIENT_10; // NOI18N |
| |
| private static final String WEBSERVICES_TAG="webservices"; //NOI18N |
| private static final String WEBSERVICES_1_1_XSD="j2ee_web_services_1_1.xsd"; // NOI18N |
| private static final String WEBSERVICES_1_1= IBM_J2EE_NS+"/"+WEBSERVICES_1_1_XSD; // NOI18N |
| public static final String WEBSERVICES_1_1_ID = "SCHEMA:"+WEBSERVICES_1_1; // NOI18N |
| |
| private static final String WEBSERVICES_CLIENT_1_1_XSD="j2ee_web_services_client_1_1.xsd"; // NOI18N |
| private static final String WEBSERVICES_CLIENT_1_1= J2EE_NS+"/"+WEBSERVICES_CLIENT_1_1_XSD; // NOI18N |
| public static final String WEBSERVICES_CLIENT_1_1_ID = "SCHEMA:"+WEBSERVICES_CLIENT_1_1; // NOI18N |
| |
| private static final String WEBSERVICES_1_2_XSD="javaee_web_services_1_2.xsd"; // NOI18N |
| private static final String WEBSERVICES_1_2= JAVAEE_NS+"/"+WEBSERVICES_1_2_XSD; // NOI18N |
| public static final String WEBSERVICES_1_2_ID = "SCHEMA:"+WEBSERVICES_1_2; // NOI18N |
| |
| private static final String WEBSERVICES_1_3_XSD="javaee_web_services_1_3.xsd"; // NOI18N |
| private static final String WEBSERVICES_1_3= JAVAEE_NS+"/"+WEBSERVICES_1_3_XSD; // NOI18N |
| public static final String WEBSERVICES_1_3_ID = "SCHEMA:"+WEBSERVICES_1_3; // NOI18N |
| |
| private static final String WEBSERVICES_1_4_XSD="javaee_web_services_1_4.xsd"; // NOI18N |
| private static final String WEBSERVICES_1_4= NEW_JAVAEE_NS+"/"+WEBSERVICES_1_4_XSD; // NOI18N |
| public static final String WEBSERVICES_1_4_ID = "SCHEMA:"+WEBSERVICES_1_4; // NOI18N |
| |
| private static final String WEBSERVICES_2_0_XSD="jakartaee_web_services_2_0.xsd"; // NOI18N |
| private static final String WEBSERVICES_2_0= JAKARTAEE_NS+"/"+WEBSERVICES_2_0_XSD; // NOI18N |
| public static final String WEBSERVICES_2_0_ID = "SCHEMA:"+WEBSERVICES_2_0; // NOI18N |
| |
| private static final String WEBSERVICES_CLIENT_1_2_XSD="javaee_web_services_client_1_2.xsd"; // NOI18N |
| private static final String WEBSERVICES_CLIENT_1_2= JAVAEE_NS+"/"+WEBSERVICES_CLIENT_1_2_XSD; // NOI18N |
| public static final String WEBSERVICES_CLIENT_1_2_ID = "SCHEMA:"+WEBSERVICES_CLIENT_1_2; // NOI18N |
| |
| private static final String WEBSERVICES_CLIENT_1_3_XSD="javaee_web_services_client_1_3.xsd"; // NOI18N |
| private static final String WEBSERVICES_CLIENT_1_3= JAVAEE_NS+"/"+WEBSERVICES_CLIENT_1_3_XSD; // NOI18N |
| public static final String WEBSERVICES_CLIENT_1_3_ID = "SCHEMA:"+WEBSERVICES_CLIENT_1_3; // NOI18N |
| |
| private static final String WEBSERVICES_CLIENT_1_4_XSD="javaee_web_services_client_1_4.xsd"; // NOI18N |
| private static final String WEBSERVICES_CLIENT_1_4= NEW_JAVAEE_NS+"/"+WEBSERVICES_CLIENT_1_4_XSD; // NOI18N |
| public static final String WEBSERVICES_CLIENT_1_4_ID = "SCHEMA:"+WEBSERVICES_CLIENT_1_4; // NOI18N |
| |
| private static final String WEBSERVICES_CLIENT_2_0_XSD="jakartaee_web_services_client_2_0.xsd"; // NOI18N |
| private static final String WEBSERVICES_CLIENT_2_0= JAKARTAEE_NS+"/"+WEBSERVICES_CLIENT_2_0_XSD; // NOI18N |
| public static final String WEBSERVICES_CLIENT_2_0_ID = "SCHEMA:"+WEBSERVICES_CLIENT_2_0; // NOI18N |
| |
| private static final String WEBAPP_TAG="web-app"; //NOI18N |
| private static final String WEBAPP_2_5_XSD="web-app_2_5.xsd"; // NOI18N |
| private static final String WEBAPP_2_5 = JAVAEE_NS+"/"+WEBAPP_2_5_XSD; // NOI18N |
| public static final String WEBAPP_2_5_ID = "SCHEMA:"+WEBAPP_2_5; // NOI18N |
| |
| private static final String WEBAPP_3_0_XSD="web-app_3_0.xsd"; // NOI18N |
| private static final String WEBAPP_3_0 = JAVAEE_NS+"/"+WEBAPP_3_0_XSD; // NOI18N |
| public static final String WEBAPP_3_0_ID = "SCHEMA:"+WEBAPP_3_0; // NOI18N |
| |
| private static final String WEBCOMMON_3_0_XSD="web-common_3_0.xsd"; // NOI18N |
| private static final String WEBCOMMON_3_0 = JAVAEE_NS+"/"+WEBCOMMON_3_0_XSD; // NOI18N |
| public static final String WEBCOMMON_3_0_ID = "SCHEMA:"+WEBCOMMON_3_0; // NOI18N |
| |
| private static final String WEBFRAGMENT_3_0_XSD="web-fragment_3_0.xsd"; // NOI18N |
| private static final String WEBFRAGMENT_3_0 = JAVAEE_NS+"/"+WEBFRAGMENT_3_0_XSD; // NOI18N |
| public static final String WEBFRAGMENT_3_0_ID = "SCHEMA:"+WEBFRAGMENT_3_0; // NOI18N |
| |
| private static final String WEBAPP_3_1_XSD="web-app_3_1.xsd"; // NOI18N |
| private static final String WEBAPP_3_1 = NEW_JAVAEE_NS+"/"+WEBAPP_3_1_XSD; // NOI18N |
| public static final String WEBAPP_3_1_ID = "SCHEMA:"+WEBAPP_3_1; // NOI18N |
| |
| private static final String WEBCOMMON_3_1_XSD="web-common_3_1.xsd"; // NOI18N |
| private static final String WEBCOMMON_3_1 = NEW_JAVAEE_NS+"/"+WEBCOMMON_3_1_XSD; // NOI18N |
| public static final String WEBCOMMON_3_1_ID = "SCHEMA:"+WEBCOMMON_3_1; // NOI18N |
| |
| private static final String WEBFRAGMENT_3_1_XSD="web-fragment_3_1.xsd"; // NOI18N |
| private static final String WEBFRAGMENT_3_1 = NEW_JAVAEE_NS+"/"+WEBFRAGMENT_3_1_XSD; // NOI18N |
| public static final String WEBFRAGMENT_3_1_ID = "SCHEMA:"+WEBFRAGMENT_3_1; // NOI18N |
| |
| private static final String WEBAPP_4_0_XSD="web-app_4_0.xsd"; // NOI18N |
| private static final String WEBAPP_4_0 = NEW_JAVAEE_NS+"/"+WEBAPP_4_0_XSD; // NOI18N |
| public static final String WEBAPP_4_0_ID = "SCHEMA:"+WEBAPP_4_0; // NOI18N |
| |
| private static final String WEBCOMMON_4_0_XSD="web-common_4_0.xsd"; // NOI18N |
| private static final String WEBCOMMON_4_0 = NEW_JAVAEE_NS+"/"+WEBCOMMON_4_0_XSD; // NOI18N |
| public static final String WEBCOMMON_4_0_ID = "SCHEMA:"+WEBCOMMON_4_0; // NOI18N |
| |
| private static final String WEBFRAGMENT_4_0_XSD="web-fragment_4_0.xsd"; // NOI18N |
| private static final String WEBFRAGMENT_4_0 = NEW_JAVAEE_NS+"/"+WEBFRAGMENT_4_0_XSD; // NOI18N |
| public static final String WEBFRAGMENT_4_0_ID = "SCHEMA:"+WEBFRAGMENT_4_0; // NOI18N |
| |
| private static final String WEBAPP_5_0_XSD="web-app_5_0.xsd"; // NOI18N |
| private static final String WEBAPP_5_0 = JAKARTAEE_NS+"/"+WEBAPP_5_0_XSD; // NOI18N |
| public static final String WEBAPP_5_0_ID = "SCHEMA:"+WEBAPP_5_0; // NOI18N |
| |
| private static final String WEBCOMMON_5_0_XSD="web-common_5_0.xsd"; // NOI18N |
| private static final String WEBCOMMON_5_0 = JAKARTAEE_NS+"/"+WEBCOMMON_5_0_XSD; // NOI18N |
| public static final String WEBCOMMON_5_0_ID = "SCHEMA:"+WEBCOMMON_5_0; // NOI18N |
| |
| private static final String WEBFRAGMENT_5_0_XSD="web-fragment_5_0.xsd"; // NOI18N |
| private static final String WEBFRAGMENT_5_0 = JAKARTAEE_NS+"/"+WEBFRAGMENT_5_0_XSD; // NOI18N |
| public static final String WEBFRAGMENT_5_0_ID = "SCHEMA:"+WEBFRAGMENT_5_0; // NOI18N |
| |
| private static final String WEBAPP_6_0_XSD="web-app_6_0.xsd"; // NOI18N |
| private static final String WEBAPP_6_0 = JAKARTAEE_NS+"/"+WEBAPP_6_0_XSD; // NOI18N |
| public static final String WEBAPP_6_0_ID = "SCHEMA:"+WEBAPP_6_0; // NOI18N |
| |
| private static final String WEBCOMMON_6_0_XSD="web-common_6_0.xsd"; // NOI18N |
| private static final String WEBCOMMON_6_0 = JAKARTAEE_NS+"/"+WEBCOMMON_6_0_XSD; // NOI18N |
| public static final String WEBCOMMON_6_0_ID = "SCHEMA:"+WEBCOMMON_6_0; // NOI18N |
| |
| private static final String WEBFRAGMENT_6_0_XSD="web-fragment_6_0.xsd"; // NOI18N |
| private static final String WEBFRAGMENT_6_0 = JAKARTAEE_NS+"/"+WEBFRAGMENT_6_0_XSD; // NOI18N |
| public static final String WEBFRAGMENT_6_0_ID = "SCHEMA:"+WEBFRAGMENT_6_0; // NOI18N |
| |
| public static final String PERSISTENCE_NS = "http://java.sun.com/xml/ns/persistence"; // NOI18N |
| public static final String NEW_PERSISTENCE_NS = "http://xmlns.jcp.org/xml/ns/persistence"; // NOI18N |
| public static final String JAKARTA_PERSISTENCE_NS = "https://jakarta.ee/xml/ns/persistence"; // NOI18N |
| |
| private static final String PERSISTENCE_TAG="persistence"; //NOI18N |
| private static final String PERSISTENCE_XSD="persistence_1_0.xsd"; // NOI18N |
| private static final String PERSISTENCE = PERSISTENCE_NS+"/"+PERSISTENCE_XSD; // NOI18N |
| public static final String PERSISTENCE_ID = "SCHEMA:"+PERSISTENCE; // NOI18N |
| |
| private static final String PERSISTENCE_2_0_XSD="persistence_2_0.xsd"; // NOI18N |
| private static final String PERSISTENCE_2_0 = PERSISTENCE_NS+"/"+PERSISTENCE_2_0_XSD; // NOI18N |
| public static final String PERSISTENCE_2_0_ID = "SCHEMA:"+PERSISTENCE_2_0; // NOI18N |
| |
| private static final String PERSISTENCE_2_1_XSD="persistence_2_1.xsd"; // NOI18N |
| private static final String PERSISTENCE_2_1 = NEW_PERSISTENCE_NS+"/"+PERSISTENCE_2_1_XSD; // NOI18N |
| public static final String PERSISTENCE_2_1_ID = "SCHEMA:"+PERSISTENCE_2_1; // NOI18N |
| |
| private static final String PERSISTENCE_2_2_XSD="persistence_2_2.xsd"; // NOI18N |
| private static final String PERSISTENCE_2_2 = NEW_PERSISTENCE_NS+"/"+PERSISTENCE_2_2_XSD; // NOI18N |
| public static final String PERSISTENCE_2_2_ID = "SCHEMA:"+PERSISTENCE_2_2; // NOI18N |
| |
| private static final String PERSISTENCE_3_0_XSD="persistence_3_0.xsd"; // NOI18N |
| private static final String PERSISTENCE_3_0 = JAKARTA_PERSISTENCE_NS+"/"+PERSISTENCE_3_0_XSD; // NOI18N |
| public static final String PERSISTENCE_3_0_ID = "SCHEMA:"+PERSISTENCE_3_0; // NOI18N |
| |
| public static final String PERSISTENCEORM_NS = "http://java.sun.com/xml/ns/persistence/orm"; // NOI18N |
| public static final String NEW_PERSISTENCEORM_NS = "http://xmlns.jcp.org/xml/ns/persistence/orm"; // NOI18N |
| public static final String JAKARTA_PERSISTENCEORM_NS = "https://jakarta.ee/xml/ns/persistence/orm"; // NOI18N |
| |
| private static final String PERSISTENCEORM_TAG="entity-mappings"; //NOI18N |
| private static final String PERSISTENCEORM_XSD="orm_1_0.xsd"; // NOI18N |
| private static final String PERSISTENCEORM = PERSISTENCE_NS+"/"+PERSISTENCEORM_XSD; // NOI18N yes not ORM NS!!! |
| public static final String PERSISTENCEORM_ID = "SCHEMA:"+PERSISTENCEORM; // NOI18N |
| |
| private static final String PERSISTENCEORM_2_0_XSD="orm_2_0.xsd"; // NOI18N |
| private static final String PERSISTENCEORM_2_0 = PERSISTENCE_NS+"/"+PERSISTENCEORM_2_0_XSD; // NOI18N yes not ORM NS!!! |
| public static final String PERSISTENCEORM_2_0_ID = "SCHEMA:"+PERSISTENCEORM_2_0; // NOI18N |
| |
| private static final String PERSISTENCEORM_2_1_XSD="orm_2_1.xsd"; // NOI18N |
| private static final String PERSISTENCEORM_2_1 = NEW_PERSISTENCEORM_NS+"/"+PERSISTENCEORM_2_1_XSD; // NOI18N yes not ORM NS!!! |
| public static final String PERSISTENCEORM_2_1_ID = "SCHEMA:"+PERSISTENCEORM_2_1; // NOI18N |
| |
| private static final String PERSISTENCEORM_2_2_XSD="orm_2_2.xsd"; // NOI18N |
| private static final String PERSISTENCEORM_2_2 = NEW_PERSISTENCEORM_NS+"/"+PERSISTENCEORM_2_2_XSD; // NOI18N yes not ORM NS!!! |
| public static final String PERSISTENCEORM_2_2_ID = "SCHEMA:"+PERSISTENCEORM_2_2; // NOI18N |
| |
| private static final String PERSISTENCEORM_3_0_XSD="orm_3_0.xsd"; // NOI18N |
| private static final String PERSISTENCEORM_3_0 = JAKARTA_PERSISTENCEORM_NS+"/"+PERSISTENCEORM_3_0_XSD; // NOI18N yes not ORM NS!!! |
| public static final String PERSISTENCEORM_3_0_ID = "SCHEMA:"+PERSISTENCEORM_3_0; // NOI18N |
| |
| |
| public String getFullURLFromSystemId(String systemId){ |
| return null; |
| |
| } |
| |
| private static String SCHEMASLOCATION=null; |
| /** |
| * Resolves schema definition file for deployment descriptor (spec.2_4) |
| * @param publicId publicId for resolved entity (null in our case) |
| * @param systemId systemId for resolved entity |
| * @return InputSource for |
| */ |
| @Override |
| public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException { |
| |
| if (SCHEMASLOCATION == null) { |
| if (platformRootDir == null) { |
| return null; |
| } |
| if (!platformRootDir.exists()) { |
| return null; |
| } |
| |
| String installRoot = platformRootDir.getAbsolutePath(); //System.getProperty("com.sun.aas.installRoot"); |
| if (installRoot==null) |
| return null; |
| File f = new File(installRoot); |
| if (f.exists()==false) |
| return null; |
| File file = new File(installRoot+"/lib/schemas/"); |
| SCHEMASLOCATION = ""; |
| try{ |
| SCHEMASLOCATION= file.toURI().toURL().toExternalForm(); |
| }catch(Exception e){ |
| Logger.getLogger("payara-jakartaee").log(Level.INFO, file.getAbsolutePath(), e); // NOI18N |
| } |
| } |
| |
| if (systemId != null) { |
| if (systemId.endsWith(EJBJAR_2_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + EJBJAR_2_1_XSD); |
| } else if (systemId.endsWith(EJBJAR_3_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + EJBJAR_3_0_XSD); |
| } else if (systemId.endsWith(EJBJAR_3_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + EJBJAR_3_1_XSD); |
| } else if (systemId.endsWith(EJBJAR_3_2_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + EJBJAR_3_2_XSD); |
| } else if (systemId.endsWith(EJBJAR_4_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + EJBJAR_4_0_XSD); |
| } // application & application-client |
| else if (systemId.endsWith(APP_1_4_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APP_1_4_XSD); |
| } else if (systemId.endsWith(APPCLIENT_1_4_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APPCLIENT_1_4_XSD); |
| } else if (systemId.endsWith(APP_5_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APP_5_XSD); |
| } else if (systemId.endsWith(APPCLIENT_5_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APPCLIENT_5_XSD); |
| } else if (systemId.endsWith(APP_6_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APP_6_XSD); |
| } else if (systemId.endsWith(APPCLIENT_6_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APPCLIENT_6_XSD); |
| } else if (systemId.endsWith(APP_7_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APP_7_XSD); |
| } else if (systemId.endsWith(APPCLIENT_7_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APPCLIENT_7_XSD); |
| } else if (systemId.endsWith(APP_8_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APP_8_XSD); |
| } else if (systemId.endsWith(APPCLIENT_8_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APPCLIENT_8_XSD); |
| } else if (systemId.endsWith(APP_9_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APP_9_XSD); |
| } else if (systemId.endsWith(APPCLIENT_9_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APPCLIENT_9_XSD); |
| } else if (systemId.endsWith(APP_10_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APP_10_XSD); |
| } else if (systemId.endsWith(APPCLIENT_10_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + APPCLIENT_10_XSD); |
| } //web-app, web-common & web-fragment |
| else if (systemId.endsWith(WEBAPP_2_5_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBAPP_2_5_XSD); |
| } else if (systemId.endsWith(WEBAPP_3_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBAPP_3_0_XSD); |
| } else if (systemId.endsWith(WEBFRAGMENT_3_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBFRAGMENT_3_0_XSD); |
| } else if (systemId.endsWith(WEBCOMMON_3_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBCOMMON_3_0_XSD); |
| } else if (systemId.endsWith(WEBAPP_3_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBAPP_3_1_XSD); |
| } else if (systemId.endsWith(WEBFRAGMENT_3_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBFRAGMENT_3_1_XSD); |
| } else if (systemId.endsWith(WEBCOMMON_3_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBCOMMON_3_1_XSD); |
| } else if (systemId.endsWith(WEBAPP_4_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBAPP_4_0_XSD); |
| } else if (systemId.endsWith(WEBFRAGMENT_4_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBFRAGMENT_4_0_XSD); |
| } else if (systemId.endsWith(WEBCOMMON_4_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBCOMMON_4_0_XSD); |
| } else if (systemId.endsWith(WEBAPP_5_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBAPP_5_0_XSD); |
| } else if (systemId.endsWith(WEBFRAGMENT_5_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBFRAGMENT_5_0_XSD); |
| } else if (systemId.endsWith(WEBCOMMON_5_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBCOMMON_5_0_XSD); |
| } else if (systemId.endsWith(WEBAPP_6_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBAPP_6_0_XSD); |
| } else if (systemId.endsWith(WEBFRAGMENT_6_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBFRAGMENT_6_0_XSD); |
| } else if (systemId.endsWith(WEBCOMMON_6_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBCOMMON_6_0_XSD); |
| } //persistence & orm |
| else if (systemId.endsWith(PERSISTENCEORM_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCEORM_XSD); |
| } else if (systemId.endsWith(PERSISTENCE_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCE_XSD); |
| } else if (systemId.endsWith(PERSISTENCEORM_2_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCEORM_2_0_XSD); |
| } else if (systemId.endsWith(PERSISTENCE_2_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCE_2_0_XSD); |
| } else if (systemId.endsWith(PERSISTENCEORM_2_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCEORM_2_1_XSD); |
| } else if (systemId.endsWith(PERSISTENCE_2_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCE_2_1_XSD); |
| } else if (systemId.endsWith(PERSISTENCEORM_2_2_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCEORM_2_2_XSD); |
| } else if (systemId.endsWith(PERSISTENCE_2_2_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCE_2_2_XSD); |
| } else if (systemId.endsWith(PERSISTENCEORM_3_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCEORM_3_0_XSD); |
| } else if (systemId.endsWith(PERSISTENCE_3_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + PERSISTENCE_3_0_XSD); |
| } //webservice & webservice-client |
| else if (systemId.endsWith(WEBSERVICES_1_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_1_1_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_1_2_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_1_2_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_1_3_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_1_3_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_1_4_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_1_4_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_2_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_2_0_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_CLIENT_1_1_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_CLIENT_1_1_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_CLIENT_1_2_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_CLIENT_1_2_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_CLIENT_1_3_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_CLIENT_1_3_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_CLIENT_1_4_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_CLIENT_1_4_XSD); |
| } else if (systemId.endsWith(WEBSERVICES_CLIENT_2_0_XSD)) { |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + WEBSERVICES_CLIENT_2_0_XSD); |
| } else if (systemId.endsWith("jdbc-data-source.xsd")) { //NOI18N |
| return new org.xml.sax.InputSource(SCHEMASLOCATION + "jdbc-data-source.xsd"); //NOI18N |
| } else if (XML_XSD.equals(systemId)) { |
| return new org.xml.sax.InputSource(new java.io.StringReader(XML_XSD_DEF)); |
| } |
| } |
| return null; |
| } |
| |
| @Override |
| public Enumeration enabled(GrammarEnvironment ctx) { |
| if (ctx.getFileObject() == null) return null; |
| Enumeration<Node> en = ctx.getDocumentChildren(); |
| while (en.hasMoreElements()) { |
| Node next = (Node) en.nextElement(); |
| if (next.getNodeType() == Node.DOCUMENT_TYPE_NODE) { |
| return null; // null for web.xml specified by DTD |
| } else if (next.getNodeType() == Node.ELEMENT_NODE) { |
| Element element = (Element) next; |
| String tag = element.getTagName(); |
| String xmlns = element.getAttribute(XMLNS_ATTR); |
| if (xmlns != null && (EJB_JAR_TAG.equals(tag) || APP_TAG.equals(tag) |
| || WEBAPP_TAG.equals(tag) || APPCLIENT_TAG.equals(tag) |
| || PERSISTENCEORM_TAG.equals(tag) || PERSISTENCE_TAG.equals(tag) |
| || WEBSERVICES_TAG.equals(tag))) { // NOI18N |
| |
| if (J2EE_NS.equals(xmlns) |
| || JAVAEE_NS.equals(xmlns) |
| || NEW_JAVAEE_NS.equals(xmlns) |
| || JAKARTAEE_NS.equals(xmlns)) { // NOI18N |
| Vector<Node> v = new Vector<Node>(); |
| v.add(next); |
| return v.elements(); |
| // return org.openide.util.Enumerations.singleton(next); |
| } |
| } |
| } |
| } |
| return null; |
| } |
| |
| @Override |
| public FeatureDescriptor getDescriptor() { |
| return new FeatureDescriptor(); |
| } |
| |
| /** Returns pseudo DTD for code completion |
| */ |
| @Override |
| public GrammarQuery getGrammar(GrammarEnvironment ctx) { |
| UserCatalog catalog = UserCatalog.getDefault(); |
| ///System.out.println("bbb"); |
| InputSource is= ctx.getInputSource(); |
| //System.out.println(is.getPublicId()); |
| //System.out.println(is.getSystemId()); |
| //System.out.println(is); |
| if (catalog != null) { |
| |
| EntityResolver resolver = catalog.getEntityResolver(); |
| if (resolver != null) { |
| try { |
| |
| if (ctx.getFileObject() == null) { |
| return null; |
| } |
| InputSource inputSource = null; |
| |
| String mimeType = ctx.getFileObject().getMIMEType(); |
| if (mimeType == null){ |
| return null; |
| } |
| switch (mimeType) { |
| case "text/x-dd-ejbjar4.0": // NOI18N |
| inputSource = resolver.resolveEntity(EJBJAR_4_0_ID, ""); |
| break; |
| case "text/x-dd-ejbjar3.2": // NOI18N |
| inputSource = resolver.resolveEntity(EJBJAR_3_2_ID, ""); |
| break; |
| case "text/x-dd-ejbjar3.1": // NOI18N |
| inputSource = resolver.resolveEntity(EJBJAR_3_1_ID, ""); |
| break; |
| case "text/x-dd-ejbjar3.0": // NOI18N |
| inputSource = resolver.resolveEntity(EJBJAR_3_0_ID, ""); |
| break; |
| case "text/x-dd-ejbjar2.1": // NOI18N |
| inputSource = resolver.resolveEntity(EJBJAR_2_1_ID, ""); |
| break; |
| case "text/x-dd-application9.0": // NOI18N |
| inputSource = resolver.resolveEntity(APP_9_ID, ""); |
| break; |
| case "text/x-dd-application8.0": // NOI18N |
| inputSource = resolver.resolveEntity(APP_8_ID, ""); |
| break; |
| case "text/x-dd-application7.0": // NOI18N |
| inputSource = resolver.resolveEntity(APP_7_ID, ""); |
| break; |
| case "text/x-dd-application6.0": // NOI18N |
| inputSource = resolver.resolveEntity(APP_6_ID, ""); |
| break; |
| case "text/x-dd-application5.0": // NOI18N |
| inputSource = resolver.resolveEntity(APP_5_ID, ""); |
| break; |
| case "text/x-dd-application1.4": // NOI18N |
| inputSource = resolver.resolveEntity(APP_1_4_ID, ""); |
| break; |
| case "text/x-dd-client9.0": // NOI18N |
| inputSource = resolver.resolveEntity(APPCLIENT_9_ID, ""); |
| break; |
| case "text/x-dd-client8.0": // NOI18N |
| inputSource = resolver.resolveEntity(APPCLIENT_8_ID, ""); |
| break; |
| case "text/x-dd-client7.0": // NOI18N |
| inputSource = resolver.resolveEntity(APPCLIENT_7_ID, ""); |
| break; |
| case "text/x-dd-client6.0": // NOI18N |
| inputSource = resolver.resolveEntity(APPCLIENT_6_ID, ""); |
| break; |
| case "text/x-dd-client5.0": // NOI18N |
| inputSource = resolver.resolveEntity(APPCLIENT_5_ID, ""); |
| break; |
| case "text/x-dd-client1.4": // NOI18N |
| inputSource = resolver.resolveEntity(APPCLIENT_1_4_ID, ""); |
| break; |
| case "text/x-dd-servlet6.0": // NOI18N |
| inputSource = resolver.resolveEntity(WEBAPP_6_0_ID, ""); |
| break; |
| case "text/x-dd-servlet5.0": // NOI18N |
| inputSource = resolver.resolveEntity(WEBAPP_5_0_ID, ""); |
| break; |
| case "text/x-dd-servlet4.0": // NOI18N |
| inputSource = resolver.resolveEntity(WEBAPP_4_0_ID, ""); |
| break; |
| case "text/x-dd-servlet3.1": // NOI18N |
| inputSource = resolver.resolveEntity(WEBAPP_3_1_ID, ""); |
| break; |
| case "text/x-dd-servlet3.0": // NOI18N |
| inputSource = resolver.resolveEntity(WEBAPP_3_0_ID, ""); |
| break; |
| case "text/x-dd-servlet2.5": // NOI18N |
| inputSource = resolver.resolveEntity(WEBAPP_2_5_ID, ""); |
| break; |
| case "text/x-dd-servlet-fragment6.0": // NOI18N |
| inputSource = resolver.resolveEntity(WEBFRAGMENT_6_0_ID, ""); |
| break; |
| case "text/x-dd-servlet-fragment5.0": // NOI18N |
| inputSource = resolver.resolveEntity(WEBFRAGMENT_5_0_ID, ""); |
| break; |
| case "text/x-dd-servlet-fragment4.0": // NOI18N |
| inputSource = resolver.resolveEntity(WEBFRAGMENT_4_0_ID, ""); |
| break; |
| case "text/x-dd-servlet-fragment3.1": // NOI18N |
| inputSource = resolver.resolveEntity(WEBFRAGMENT_3_1_ID, ""); |
| break; |
| case "text/x-dd-servlet-fragment3.0": // NOI18N |
| inputSource = resolver.resolveEntity(WEBFRAGMENT_3_0_ID, ""); |
| break; |
| case "text/x-persistence3.0": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCE_3_0_ID, ""); |
| break; |
| case "text/x-persistence2.2": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCE_2_2_ID, ""); |
| break; |
| case "text/x-persistence2.1": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCE_2_1_ID, ""); |
| break; |
| case "text/x-persistence2.0": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCE_2_0_ID, ""); |
| break; |
| case "text/x-persistence1.0": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCE_ID, ""); |
| break; |
| case "text/x-orm3.0": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCEORM_3_0_ID, ""); |
| break; |
| case "text/x-orm2.2": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCEORM_2_2_ID, ""); |
| break; |
| case "text/x-orm2.1": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCEORM_2_1_ID, ""); |
| break; |
| case "text/x-orm2.0": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCEORM_2_0_ID, ""); |
| break; |
| case "text/x-orm1.0": // NOI18N |
| inputSource = resolver.resolveEntity(PERSISTENCEORM_ID, ""); |
| break; |
| default: |
| break; |
| } |
| |
| if (inputSource != null) { |
| return DTDUtil.parseDTD(true, inputSource); |
| } |
| |
| if (is.getSystemId().endsWith("webservices.xml") ) { // NOI18N |
| // System.out.println("webservices tag"); |
| inputSource = resolver.resolveEntity(WEBSERVICES_1_1_ID, ""); |
| if (inputSource!=null) { |
| return DTDUtil.parseDTD(true, inputSource); |
| } |
| } |
| |
| } catch(SAXException e) { |
| } catch(java.io.IOException e) { |
| //System.out.println("eeee"); |
| e.printStackTrace(); |
| } |
| } |
| } |
| return null; |
| } |
| |
| /** |
| * Get registered URI for the given name or null if not registered. |
| * @return null if not registered |
| */ |
| @Override |
| public String resolveURI(String name) { |
| // System.out.println("resolveURI(String name)="+name); |
| if (platformRootDir == null) { |
| return null; |
| } |
| if (!platformRootDir.exists()) { |
| return null; |
| } |
| String installRoot = platformRootDir.getAbsolutePath(); |
| String prefix =""; |
| File file = new File(installRoot+"/lib/schemas/"); |
| try{ |
| prefix= file.toURI().toURL().toExternalForm(); |
| }catch(Exception e){ |
| Logger.getLogger("payara-jakartaee").log(Level.INFO, file.getAbsolutePath(), e); // NOI18N |
| } |
| if (name.equals("http://java.sun.com/xml/ns/jax-rpc/ri/config")){ |
| return prefix +"jax-rpc-ri-config.xsd"; |
| } |
| // if (name.equals("http://java.sun.com/xml/ns/persistence")){ |
| // System.out.println("prefix +persistence.xsd="+ prefix +"persistence.xsd"); |
| // return prefix +"persistence.xsd"; |
| // } |
| // ludo: this is meant to be this way. |
| if (name.equals("http://java.sun.com/xml/ns/j2eeppppppp")){ |
| return prefix +"j2ee_web_services_1_1.xsd"; |
| } |
| |
| return null; |
| } |
| /** |
| * Get registered URI for the given publicId or null if not registered. |
| * @return null if not registered |
| */ |
| @Override |
| public String resolvePublic(String publicId) { |
| return null; |
| } |
| } |