Package com.ibm.xsp.extlib.javacompiler

Examples of com.ibm.xsp.extlib.javacompiler.JavaSourceClassLoader


  public static boolean DEBUG = false;

  @SuppressWarnings("unchecked")
  @Override
  public Class<JspFragment> getCompiledClass(String jspClassName) throws Exception {
    JavaSourceClassLoader loader = getSourceClassLoader();
    if(loader.isCompiledFile(jspClassName)) {
      return (Class<JspFragment>)loader.loadClass(jspClassName);
    }
    return null;
  }
View Full Code Here


  }

  @SuppressWarnings("unchecked")
  @Override
  public synchronized Class<JspFragment> compileSnippet(String jspClassName, String source) throws Exception {
    JavaSourceClassLoader loader = getSourceClassLoader();
    Class<JspFragment> f = getCompiledClass(jspClassName);
    if(f==null) {
      f = (Class<JspFragment>)loader.addClass(jspClassName, source);
    }
    return f;
  }
View Full Code Here

  // the parameters generate different classes
  private static final boolean SHARED_CLASS_LOADER = !DYNAMIC_PAGES;

  private JavaSourceClassLoader getSourceClassLoader() {
    Map<String,Object> scope = ExtLibUtil.getApplicationScope();
    JavaSourceClassLoader loader = SHARED_CLASS_LOADER ? (JavaSourceClassLoader)scope.get("playground.java.loader") : null;
    if(loader==null) {
      synchronized(this) {
        loader = (JavaSourceClassLoader)scope.get("playground.java.loader");
        if(loader==null) {
          String[] bundles = new String[] {
            "com.ibm.commons",
            "com.ibm.commons.xml",
            "com.ibm.commons.runtime",
            "com.ibm.sbt.core",
            "com.ibm.sbt.libs",
            "com.ibm.xsp.sbtsdk",
            "com.ibm.xsp.sbtsdk.playground",
            "com.ibm.pvc.servlet",
            "com.ibm.pvc.servlet.jsp"
          };
          loader = new JavaSourceClassLoader(FacesContextEx.getCurrentInstance().getContextClassLoader(),null,bundles);
          if(SHARED_CLASS_LOADER && !DEBUG) {
            scope.put("playground.java.loader",loader);
          }
        }
      }
View Full Code Here

TOP

Related Classes of com.ibm.xsp.extlib.javacompiler.JavaSourceClassLoader

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.