Java compiler options with JSP

          Is there any way to specify compiler options to use with the JSP compiler through weblogic.properties? I'd like to get the JSPs compiled with the -g option. Thanks.
          Mike
          

          How about add
          J=-g
          to "weblogic.httpd.initArgs.*.jsp"?
          Jong
          "Michael Gilbode" <[email protected]> wrote:
          >
          >Is there any way to specify compiler options to use with the JSP compiler through weblogic.properties? I'd like to get the JSPs compiled with the -g option. Thanks.
          >
          >Mike
          

Similar Messages

  • How to specify java compiler options in JDeveloper ?

    I am using JDeveloper 10.1.2. I downloaded and installed JDK 5.0.
    In my "Project Properties"->"Libraries" I created a new "JDK 5.0" J2SE Version and pointed to the new JDK5.0 execuitable. So far so good.
    Now I need to compile all my source code with -source=1.4 option. How do I specify java compiler option "-source=1.4" in JDeveloper ?
    Thanks
    Sachin

    Even before compilig I am not sure that by just going to "Project Properties"->Libraries and creating a new J2SE, I now have the new compiler working with JDEveloper. How do I test this ?

  • Compilation problem with JSP: i am sure this is easy but cant figure out

    this is my jsp file:
    <@ page import="java.sql.*, com.simpleneasy.*" errorPage="error.jsp"; %>
    <jsp:useBean id="c" class="ConnectionBean"></jsp:useBean>
    <html>
    <%
         String sql = "select * from test;";
         ResultSet rs;
         c.establishConnection();
         try{
              rs = c.executeQuery(sql);
         }catch (SQlException ex){}     
         while (rs.next()){
         %>VALa is <%= rs.getInt("val")%>
         <br>Valb is <%= rs.getString("val2")%><%
         closeConnection();
    %>
    </html>
    located in tomcat416/tomcat/webapps/simpleneasy/jsp
    ConnectionBean.class is located in tomcat416/tomcat/webapps/simpleneasy/WEB-INF/classes/com/simpleneasy
    here is the sample of error that i am getting.. there are a lot more but dont want to paste the whole thing here:
    org.apache.jasper.JasperException: Unable to compile class for JSP
    An error occurred at line: 1 in the jsp file: /jsp/testdb.jsp
    Generated servlet error:
    [javac] Compiling 1 source file
    /usr/tomcat416/tomcat/work/Standalone/localhost/simpleneasy/jsp/testdb$jsp.java:42: cannot resolve symbol
    symbol : class ConnectionBean
    location: class org.apache.jsp.testdb$jsp
    ConnectionBean c = null;
    ^
    An error occurred at line: 1 in the jsp file: /jsp/testdb.jsp
    Generated servlet error:
    /usr/tomcat416/tomcat/work/Standalone/localhost/simpleneasy/jsp/testdb$jsp.java:44: cannot resolve symbol
    symbol : class ConnectionBean
    location: class org.apache.jsp.testdb$jsp
    c = (ConnectionBean) pageContext.getAttribute("c", PageContext.PAGE_SCOPE);
    ^
    An error occurred at line: 1 in the jsp file: /jsp/testdb.jsp
    Generated servlet error:
    /usr/tomcat416/tomcat/work/Standalone/localhost/simpleneasy/jsp/testdb$jsp.java:47: cannot resolve symbol
    symbol : class ConnectionBean
    location: class org.apache.jsp.testdb$jsp
    c = (ConnectionBean) java.beans.Beans.instantiate(this.getClass().getClassLoader(), "ConnectionBean");
    ^
    An error occurred at line: 3 in the jsp file: /jsp/testdb.jsp
    Generated servlet error:
    /usr/tomcat416/tomcat/work/Standalone/localhost/simpleneasy/jsp/testdb$jsp.java:60: cannot resolve symbol
    symbol : class ResultSet
    location: class org.apache.jsp.testdb$jsp
         ResultSet rs;
    ^
    An error occurred at line: 3 in the jsp file: /jsp/testdb.jsp
    Generated servlet error:
    /usr/tomcat416/tomcat/work/Standalone/localhost/simpleneasy/jsp/testdb$jsp.java:64: cannot resolve symbol
    symbol : class SQlException
    location: class org.apache.jsp.testdb$jsp
         }catch (SQlException ex){}     
    ^

    first of all thanks for helping ..
    i re wrote the code as you suggested like this:
    <@ page import="java.sql.*, com.simpleneasy.*" errorPage="error.jsp" %>
    <jsp:useBean id="c" class="com.simpleneasy.ConnectionBean"></jsp:useBean>
    <html>
    <% String sql = "select * from test";
         ResultSet rs = null;
         c.establishConnection();
         try{     
              rs = c.executeQuery(sql);
              while (rs.next()){        
              out.println(rs.getInt("val"));
              out.println(rs.getString("val2"));
         }catch (SQlException ex){   }
         finally{      c.closeConnection();   }
         %>
    </html>
    but now i am getting this:
    org.apache.jasper.JasperException: Unable to compile class for JSP
    An error occurred at line: 3 in the jsp file: /jsp/testdb.jsp
    Generated servlet error:
    [javac] Compiling 1 source file
    /usr/tomcat416/tomcat/work/Standalone/localhost/simpleneasy/jsp/testdb$jsp.java:59: cannot resolve symbol
    symbol : class ResultSet
    location: class org.apache.jsp.testdb$jsp
         ResultSet rs = null;
    ^
    An error occurred at line: 3 in the jsp file: /jsp/testdb.jsp
    Generated servlet error:
    /usr/tomcat416/tomcat/work/Standalone/localhost/simpleneasy/jsp/testdb$jsp.java:67: cannot resolve symbol
    symbol : class SQlException
    location: class org.apache.jsp.testdb$jsp
         }catch (SQlException ex){   }
    ^
    2 errors

  • BUG: Oracle Java Compiler bug with anonymous inner classes in constructor

    The following code compiles and runs just fine using 1.4.2_07, 1.5.0_07 and 1.6.0_beta2 when compiling and running from the command-line.
    It does not run when compiling from JDeveloper 10.1.3.36.73 (which uses the ojc.jar).
    When compiled from JDeveloper, the JRE (both the embedded one or the external 1.5.0_07 one) reports the following error:
    java.lang.VerifyError: (class: com/ids/arithmeticexpr/Scanner, method: <init> signature: (Ljava/io/Reader;)V) Expecting to find object/array on
    stack
    Here's the code:
    /** lexical analyzer for arithmetic expressions.
    Fixes the lookahead problem for TT_EOL.
    public class Scanner extends StreamTokenizer
    /** kludge: pushes an anonymous Reader which inserts
    a space after each newline.
    public Scanner( Reader r )
    super( new FilterReader( new BufferedReader( r ) )
    protected boolean addSpace; // kludge to add space after \n
    public int read() throws IOException
    int ch = addSpace ? ' ' : in.read();
    addSpace = ch == '\n';
    return ch;
    public static void main( String[] args )
    Scanner scanner = new Scanner( new StringReader("1+2") ); // !!!
    Removing the (implicit) reference to 'this' in the call to super() by passing an instance of a static inner class 'Kludge' instead of the anonymous subclass of FilterReader fixes the error. The code will then run even when compiled with ojc. There seems to be a bug in ojc concerning references to the partially constructed object (a bug which which is not present in the reference compilers.)
    -- Sebastian

    Thanks Sebastian, I filed a bug for OJC, and I'll look at the Javac bug. Either way, OJC should either give an error or create correct code.
    Keimpe Bronkhorst
    JDev Team

  • How does Java Compiler deal with circular dependence?

    A simple example is in the most basic class Object, you have a toString() method which uses String class, but, a String is an Object class first. So when the compiler encounters this circular dependence situation, how does it deal with it?
    Anyone has some ideas?

    I studied this a while ago... I think I know the answer, but you can still confirm it.
    Suppose you said javac Object.java, the first thing it would do is load the file into memory and layout its functions. Then it will search for dependencies. Finding String on in the classpath, it loads that up into memory too. It then searches for String's dependencies and so on...

  • Java 1.5 with jsp

    I'm using Netbeans 5 RC2 and can't get enhanced for loops to work in jsp pages. I get the error
    "for-each loops are not supported in -source 1.4 (try -source 1.5 to enable for-each loops)"
    Source level is set to 1.5 in project properties. Any ideas?

    I know
    yum install tomcat6
    yum install tomcat6-webapps
    yum install tomcat6-admin-webappson linux system is easy and works
    I guess you are using linux as you said */webapp/...../*

  • What Java compiler for Java Card development ?

    What Java compiler and options should be used for Java Card development with the goal of generating correct, and (secondarily) small or/and fast code after conversion to Java Card bytecode using converter ?
    In particular
    - Is use of JDK 7 approved by Oracle for Java Card development? That would solve security problems associated with (the web components of the JRE of) some earlier JDK, including the latest JDK6. The JCDK 3.0.4 release notes states "+the commercial version of Java Development Kit (JDK software) version 6 Update 10 (JDK 6 Update 10) or later is required+, but that does not answer that question.
    - Anyone had _bad_ experience (like incorrect or disastrous code) with the Java compiler bundled with Eclipse ? I have seen at least one case where org.eclipse.jdt.core_3.7.3.v20120119-1537.jar produced slightly more compact code than javac.
    - Anyone had _bad_ experience with javac in jdk1.3 ? In an applet involving a "finally" clause, I've seen it generating more compact code than later javac (which in my test triplicated the code for the finally clause).

    What Java compiler and options should be used for Java Card development with the goal of generating correct, and (secondarily) small or/and fast code after conversion to Java Card bytecode using converter ?-target -source may be required to generate compatible byte code. Depending on the CAP file converter being used debug information may also help. Remember that Java Card is a subset of the Java language (also there are short opcodes that Java doesn't have etc) so a lot of the work for optimisation is done by the converter or the JCRE. You can look at the JCA code generated to determine what works best for your applets. There are also some ways of stripping out dead code etc from JCA files (return statements after a throw etc) to reduce your code size. Most of the speed optimisations come from your code (avoiding context switches and unnecessary security/access checks).
    The compactness of your Java Card binary may not be directly related to the size of your compiled Java code. It can depend on the converter you use and any optimisaitons the JCRE might try to do when the code is loaded.
    - Is use of JDK 7 approved by Oracle for Java Card development? That would solve security problems associated with (the web components of the JRE of) some earlier JDK, including the latest JDK6. Java Card does not use any of the libraries from the JDK/JRE. All of the libraries are provided by the JCRE on the smartcard.
    The JCDK 3.0.4 release notes states "+the commercial version of Java Development Kit (JDK software) version 6 Update 10 (JDK 6 Update 10) or later is required+, but that does not answer that question.Anything above JDK6u10 is supported. If you use Java 7 you may need to add a -source and -target flag when compiling.
    - Anyone had _bad_ experience (like incorrect or disastrous code) with the Java compiler bundled with Eclipse ? I have seen at least one case where org.eclipse.jdt.core_3.7.3.v20120119-1537.jar produced slightly more compact code than javac.We generally use the Eclipse compiler as we find that we get more deterministic builds. When CAP files are sent for security review it is helpful to have the reviewer able to generate a CAP file that matches the one you sent to confirm the binary is what you say it is.
    - Anyone had _bad_ experience with javac in jdk1.3 ? In an applet involving a "finally" clause, I've seen it generating more compact code than later javac (which in my test triplicated the code for the finally clause).We do not use anything less than Java 6 for compilation.
    - Shane

  • JSP compilation failed with java.lang.IllegalStateException: zip file close

    Hi,
    I have a web app successfully deployed on Weblogic7.0 and HP UX 11.0, which uses jdk 1.3.1_02
    In this application, when i invoke a jsp (this exception occurs on any jsp not to any specific jsp), i found the following exception trace on wl-domain.log file and server crashes: -
    java.lang.IllegalStateException: zip file closed
         at java.util.zip.ZipFile.getEntry(Unknown Source)
         at weblogic.servlet.internal.WarClassFinder.getSource(WarClassFinder.java, Compiled Code)
         at weblogic.servlet.internal.WarClassFinder.getSource(WarClassFinder.java, Compiled Code)
         at weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java, Compiled Code)
         at weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java, Compiled Code)
         at weblogic.utils.classloaders.MultiClassFinder.getClassSource(MultiClassFinder.java, Compiled Code)
         at weblogic.utils.classloaders.ChangeAwareClassLoader.upToDate(ChangeAwareClassLoader.java, Compiled Code)
         at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java, Compiled Code)
         at weblogic.servlet.internal.ServletStubImpl.checkForReload(ServletStubImpl.java, Compiled Code)
         at weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java, Compiled Code)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java, Compiled Code)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java, Compiled Code)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java, Compiled Code)
         at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java, Compiled Code)
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java, Compiled Code)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java, Compiled Code)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java, Compiled Code)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, Compiled Code)
    Can anyone help me in figuring out this problem urgently?
    thanks in advance
    manoj

    Hi Manoj.I am also getting the same problem in the weblogicserver version-6.1 SP2.It is also using the jdk 1.31.
    here is my stack trace.Help i smuch appreciated.!!
    java.lang.IllegalStateException: zip file closed
         at java.util.zip.ZipFile.getEntry(ZipFile.java:141)
         at weblogic.servlet.internal.WarClassFinder.getSource(WarClassFinder.java:197)
         at weblogic.servlet.internal.WarClassFinder.getSource(WarClassFinder.java:106)
         at weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java:53)
         at weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java:53)
         at weblogic.utils.classloaders.MultiClassFinder.getClassSource(MultiClassFinder.java:45)
         at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:265)
         at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:156)
         at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:65)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
         at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:43)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
         at org.exolab.castor.xml.Unmarshaller.unmarshal(Unknown Source)
         at org.exolab.castor.xml.Unmarshaller.unmarshal(Unknown Source)
         at org.exolab.castor.xml.Unmarshaller.unmarshal(Unknown Source)
         at com.slfc.framework.service.ServiceMessageFactory.createServiceResult(ServiceMessageFactory.java:58)
         at sunlife.nexus.admin.SecPro.establishSupportSession(Unknown Source)
         at sunlife.nexus.admin.Page_secPro_extAppLoader.processPageRequest(Unknown Source)
         at sunlife.wis.servlets.WISServlet.redirect(WISServlet.java:63)
         at sunlife.wis.servlets.WISServlet.doExec(WISServlet.java:107)
         at sunlife.wis.servlets.WISServlet.doGet(WISServlet.java:70)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2495)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2204)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)

  • Java.lang.OutOfMemoryException during JSP compilation

    Hi,
              hunting down a problem at our customer's site, I upgraded our test server to WebLogic 8.1SP6 from SP5, just on the hunch this might have influenced the problem. What I ended up doing was a complete wipe of our SP5 installation and making a fresh SP6 setup.
              That was a very interesting experience. Lot's of changes. APP-INF/lib working, Windows service creation working. Interesting.
              However, the application failed a few pages inwards with an OutOfMemoryException during JSP compilation. I upped the JVM's memory with -Xms and -Xmx, but it still fails. It didn't with SP5, with all settings at their defaults.
              Anybody an idea?
              Bert Laverman
              Perot Systems Nederland BV
              <pre>javax.servlet.ServletException: JSP compilation of /SomeJSPFile.jsp failed: weblogic.utils.compiler.CodeGenerationException: Exception: 'java.lang.OutOfMemoryError' while trying to invoke: serviceMethod at line 46 - with nested exception:
              [weblogic.utils.compiler.CodeGenerationException: Exception: 'java.lang.OutOfMemoryError' while trying to invoke: serviceMethod at line 46 - with nested exception:
              [java.lang.reflect.InvocationTargetException - with target exception:
              [java.lang.OutOfMemoryError]]]
                   at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:256)
                   at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:196)
                   at weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:598)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:406)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:526)
                   at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
                   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
                   at com.company.application.impl.TransactionInViewFilter.doFilter(TransactionInViewFilter.java:89)
                   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
                   at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7053)
                   at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
                   at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
                   at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
                   at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
                   at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
                   at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
              </pre>

    How did you resolve this problem? I got same error          > ever since upgraded server from sp5 to sp6. Thanks in
              > advance.
              The thing I found is that the startWebLogic.cmd and startManagedWebLogic.cmd scripts (which is where I did the memory settings) are not used at all if you're using managed servers. If you want to adjust memory, it has to be through the settings for that server in the WebLogic console, which is a pain, because you cannot enter one field and have WLS provide defaults for the rest. It's a all-or-nothing. When I finally got them right the managed server process correctly used the new settings and the problem disappeared.
              Cheers,
              Bert

  • Java compilation and running within jsp page

    hi,
    i need of a jsp page that has a textarea in which the java coding are entered and this coding is compiled and executed. The execution result is printed.
    Please guide me.

    I don't think you can invoke java compiler or run time environment at client side (browser). Even if you use applet, i think you will not be able to do it at client side. Moreover, though java virtual machine will be available in your target user's browser, but you should not expect a java compiler in users machine.
    I have seen exam sites where they have added java code compilation and execution ability. To achieve this you can do:
    1. In your JSP page use text area where user can edit java code.
    2. Provide two buttons - 'Compile' and 'Run'.
    3. On click of 'Compile' send the code to server side. In server machine create a file in a temporary location in disk and save the code content received from client.
    4. Invoke 'javac' command (as a separate process) to compile the java class created in step 3. This process will give you error/output back which you can send back to user.
    5. In case of 'Run' you must first invoke above mentioned 'Compile' service and then another service ('Run') to actually run you java class. You can build 'Run' service in similar way.
    Here you challenge would be managing multiple client requests (to compile and run java class) at the same time.
    Code to compile and run java classes:
    import java.io.*;
    * A class to compile and run java classes.
    * @author Mrityunjoy Saha
    public class JavaProcessor{
         public static void main(String[] args){
              // Option 1 to compile and option 2 to run.
              int option=1;
              if(args.length > 0){
                   option=Integer.parseInt(args[0]);
              JavaProcessor p=new JavaProcessor();
              if(option==1){
                   p.compile();
              } else {
                   p.run();
         public void run(){
              String file="FoodTest";
              String directory="C:/Users/mrityunjoy_saha/Documents/Test";     
              executeCommand("java", directory, file);
         public void compile(){
              String file="FoodTest.java";
              String directory="C:/Users/mrityunjoy_saha/Documents/Test";     
              executeCommand("javac", directory, file);
         public void executeCommand(String command, String directory, String file){
              try{
                   String[] envp=null;
                   // Make sure that you have done Java setup in your machine.
                   // To test this try invoking javac command in command prompt.
                   Process p=Runtime.getRuntime().exec(command+" "+file,envp,new File(directory));
                   BufferedReader errorStream=new BufferedReader(new InputStreamReader(p.getErrorStream()));
                   String readData="";
                   while((readData=errorStream.readLine())!=null){
                        System.out.println(readData);
                   BufferedReader outStream=new BufferedReader(new InputStreamReader(p.getInputStream()));
                   readData="";
                   while((readData=outStream.readLine())!=null){
                        System.out.println(readData);
              catch(IOException ioe){
                   ioe.printStackTrace();
    }Thanks,
    Mrityunjoy

  • Example code for java compiler with a simple GUI

    There is no question here (though discussion of the code is welcome).
    /* Update 1 */
    Now available as a stand alone or webstart app.! The STBC (see the web page*) has its own web page and has been improved to allow the user to browse to a tools.jar if one is not found on the runtime classpath, or in the JRE running the code.
    * See [http://pscode.org/stbc/].
    /* End: Update 1 */
    This simple example of using the JavaCompiler made available in Java 1.6 might be of use to check that your SSCCE is actually what it claims to be!
    If an SSCCE claims to display a runtime problem, it should compile cleanly when pasted into the text area above the Compile button. For a compilation problem, the code should show the same output errors seen in your own editor (at least until the last line of the output in the text area).
    import java.awt.BorderLayout;
    import java.awt.Font;
    import java.awt.EventQueue;
    import java.awt.event.ActionListener;
    import java.awt.event.ActionEvent;
    import javax.swing.JFrame;
    import javax.swing.JOptionPane;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JLabel;
    import javax.swing.JTextArea;
    import javax.swing.JTextField;
    import javax.swing.JButton;
    import javax.swing.SwingWorker;
    import javax.swing.border.EmptyBorder;
    import java.util.ArrayList;
    import java.net.URI;
    import java.io.ByteArrayOutputStream;
    import java.io.OutputStreamWriter;
    import javax.tools.ToolProvider;
    import javax.tools.JavaCompiler;
    import javax.tools.SimpleJavaFileObject;
    /** A simple Java compiler with a GUI.  Java 1.6+.
    @author Andrew Thompson
    @version 2008-06-13
    public class GuiCompiler extends JPanel {
      /** Instance of the compiler used for all compilations. */
      JavaCompiler compiler;
      /** The name of the public class.  For 'HelloWorld.java',
      this would be 'HelloWorld'. */
      JTextField name;
      /** The source code to be compiled. */
      JTextArea sourceCode;
      /** Errors and messages from the compiler. */
      JTextArea output;
      JButton compile;
      static int pad = 5;
      GuiCompiler() {
        super( new BorderLayout(pad,pad) );
        setBorder( new EmptyBorder(7,4,7,4) );
      /** A worker to perform each compilation. Disables
      the GUI input elements during the work. */
      class SourceCompilation extends SwingWorker<String, Object> {
        @Override
        public String doInBackground() {
          return compileCode();
        @Override
        protected void done() {
          try {
            enableComponents(true);
          } catch (Exception ignore) {
      /** Construct the GUI. */
      public void initGui() {
        JPanel input = new JPanel( new BorderLayout(pad,pad) );
        Font outputFont = new Font("Monospaced",Font.PLAIN,12);
        sourceCode = new JTextArea("Paste code here..", 15, 60);
        sourceCode.setFont( outputFont );
        input.add( new JScrollPane( sourceCode ),
          BorderLayout.CENTER );
        sourceCode.select(0,sourceCode.getText().length());
        JPanel namePanel = new JPanel(new BorderLayout(pad,pad));
        name = new JTextField(15);
        name.setToolTipText("Name of the public class");
        namePanel.add( name, BorderLayout.CENTER );
        namePanel.add( new JLabel("Class name"), BorderLayout.WEST );
        input.add( namePanel, BorderLayout.NORTH );
        compile = new JButton( "Compile" );
        compile.addActionListener( new ActionListener() {
            public void actionPerformed(ActionEvent ae) {
              (new SourceCompilation()).execute();
        input.add( compile, BorderLayout.SOUTH );
        this.add( input, BorderLayout.CENTER );
        output = new JTextArea("", 5, 40);
        output.setFont( outputFont );
        output.setEditable(false);
        this.add( new JScrollPane( output ), BorderLayout.SOUTH );
      /** Compile the code in the source input area. */
      public String compileCode() {
        output.setText( "Compiling.." );
        enableComponents(false);
        String compResult = null;
        if (compiler==null) {
          compiler = ToolProvider.getSystemJavaCompiler();
        if ( compiler!=null ) {
          String code = sourceCode.getText();
          String sourceName = name.getText().trim();
          if ( sourceName.toLowerCase().endsWith(".java") ) {
            sourceName = sourceName.substring(
              0,sourceName.length()-5 );
          JavaSourceFromString javaString = new JavaSourceFromString(
            sourceName,
            code);
          ArrayList<JavaSourceFromString> al =
            new ArrayList<JavaSourceFromString>();
          al.add( javaString );
          ByteArrayOutputStream baos = new ByteArrayOutputStream();
          OutputStreamWriter osw = new OutputStreamWriter( baos );
          JavaCompiler.CompilationTask task = compiler.getTask(
            osw,
            null,
            null,
            null,
            null,
            al);
          boolean success = task.call();
          output.setText( baos.toString().replaceAll("\t", "  ") );
          compResult = "Compiled without errors: " + success;
          output.append( compResult );
          output.setCaretPosition(0);
        } else {
          output.setText( "No compilation possible - sorry!" );
          JOptionPane.showMessageDialog(this,
            "No compiler is available to this runtime!",
            "Compiler not found",
            JOptionPane.ERROR_MESSAGE
          System.exit(-1);
        return compResult;
      /** Set the main GUI input components enabled
      according to the enable flag. */
      public void enableComponents(boolean enable) {
        compile.setEnabled(enable);
        name.setEnabled(enable);
        sourceCode.setEnabled(enable);
      public static void main(String[] args) throws Exception {
        Runnable r = new Runnable() {
          public void run() {
            JFrame f = new JFrame("SSCCE text based compiler");
            f.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
            GuiCompiler compilerPane = new GuiCompiler();
            compilerPane.initGui();
            f.getContentPane().add(compilerPane);
            f.pack();
            f.setMinimumSize( f.getSize() );
            f.setLocationRelativeTo(null);
            f.setVisible(true);
        EventQueue.invokeLater(r);
    * A file object used to represent source coming from a string.
    * This example is from the JavaDocs for JavaCompiler.
    class JavaSourceFromString extends SimpleJavaFileObject {
      * The source code of this "file".
      final String code;
      * Constructs a new JavaSourceFromString.
      * @param name the name of the compilation unit represented
        by this file object
      * @param code the source code for the compilation unit
        represented by this file object
      JavaSourceFromString(String name, String code) {
        super(URI.create(
          "string:///" +
          name.replace('.','/') +
          Kind.SOURCE.extension),
          Kind.SOURCE);
        this.code = code;
      @Override
      public CharSequence getCharContent(boolean ignoreEncodingErrors) {
        return code;
    }Edit 1:
    Added..
            f.setMinimumSize( f.getSize() );Edited by: AndrewThompson64 on Jun 13, 2008 12:24 PM
    Edited by: AndrewThompson64 on Jun 23, 2008 5:54 AM

    kevjava wrote: Some things that I think would be useful:
    Suggestions reordered to suit my reply..
    kevjava wrote: 2. Line numbering, and/or a line counter so you can see how much scrolling you're going to be imposing on the forum readers.
    Good idea, and since the line count is only a handful of lines of code to implement, I took that option. See the [line count|http://pscode.org/stbc/help.html#linecount] section of the (new) [STBC Help|http://pscode.org/stbc/help.html] page for more details. (Insert plaintiff whining about the arbitrary limits set - here).
    I considered adding line length checking, but the [Text Width Checker|http://pscode.org/twc/] ('sold separately') already has that covered, and I would prefer to keep this tool more specific to compilation, which leads me to..
    kevjava wrote: 1. A button to run the code, to see that it demonstrates the problem that you wish for the forum to solve...
    Interesting idea, but I think that is better suited to a more full blown (but still relatively simple) GUId compiler. I am not fully decided that running a class is unsuited to STBC, but I am more likely to implement a clickable list of compilation errors, than a 'run' button.
    On the other hand I am thinking the clickable error list is also better suited to an altogether more abled compiler, so don't hold your breath to see either in the STBC.
    You might note I have not bothered to update the screenshots to show the line count label. That is because I am still considering error lists and running code, and open to further suggestion (not because I am just slack!). If the screenshots update to include the line count but nothing else, take that as a sign. ;-)
    Thanks for your ideas. The line count alone is worth a few Dukes.

  • [ SOLVED ] Compile Error with Java Fonts & IntelliJ

    Hi All
    I have now got a new problem when i compile a flex project.  Yesterday inorder to get the IJ Interface font smoothing sorted, i had to add this line to my ~/.bashrc file
    _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on
    But now when i go to run a flex project, i get the following error message
    Information:Using built-in compiler shell, up to 4 parallel threads
    See compiler settings at File | Settings | Compiler | Flex Compiler page
    Information:Starting Flex compiler:
    /opt/java/jre/bin/java -Dapplication.home=/home/julian/SDK/flex_sdk_4.5.0.17855 -Xmx384m -Dsun.io.useCanonCaches=false -Duser.language=en -Duser.region=en -Xmx1024m -classpath /opt/idea-IU-98.311/plugins/flex/lib/flex-compiler.jar:/home/julian/SDK/flex_sdk_4.5.0.17855/lib/flex-compiler-oem.jar com.intellij.flex.compiler.FlexCompiler 48936
    Information:Compilation completed with 2 errors and 0 warnings
    Information:2 errors
    Information:0 warnings
    Error:Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on
    Error:java.net.SocketException: Socket closed
    Error:java.net.ConnectException: Connection refused
    Error:     at java.net.PlainSocketImpl.socketConnect(Native Method)
         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
         at java.net.Socket.connect(Socket.java:529)
         at java.net.Socket.connect(Socket.java:478)
         at java.net.Socket.<init>(Socket.java:375)
         at java.net.Socket.<init>(Socket.java:218)
         at com.intellij.flex.compiler.FlexCompiler.openSocket(FlexCompiler.java:35)
         at com.intellij.flex.compiler.FlexCompiler.main(FlexCompiler.java:70)
    Any suggestions, besides disabling the _JAVA_OPTION again ?
    Many Thanks
    Last edited by whitetimer (2010-11-14 17:24:11)

    -Dawt.useSystemAAFontSettings=on needs to be added to the end of file
    idea.vmoptions

  • Javax.sound missing with Fedora Core 3 linux's java compiler?

    I'm running Fedora core 3, and I did a complete install(selected all the packeges). I have the java compiler that FC3 installed. I can compile most things, but I seem to be missing the sound package/folder.
    This leads to an error when I try to import the sound libraries.
    //start code
    //simple non-working example
    import javax.sound.*;
    class sounds
    //end code
    results in the error "The import javax.sound cannot be resolved"
    I am trying to run a code snippet from javaAlmanac, and of course it won't work. Today, a friend of mine had the exact same problem on a windows machine using JDK 1.5.
    I'm going to test this code out on a windows machine also.
    Are there issues with the FC3 java compiler?
    Has anyone else run into and solved this issue?
    I'm considering copying the sound folder from some other Java installation, anyone try this?
    Thanks,

    I'm pretty new at this myself. I've also installed Fedora Core 3 on an AMD 64. When I do the same uname - a I get:
    Linux localhost.localdomain 2.6.9-1.667 #1 Tue Nov 2 14:50:10 EST 2004 x86_64 x8 6_64 x86_64 GNU/Linux
    Maybe you didn't install as 64 bit ?
    I've also successfully installed Jave Runtime Environment. java -version gets me:
    java version "1.4.2_08"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_08-b03)
    Java HotSpot(TM) Client VM (build 1.4.2_08-b03, mixed mode)
    I'd suggest installing 32 bit. I can't tell the difference when I run programmes that use 64 or 32 bits - it will be just as good.
    Eurostar

  • Using java bean with jsp

    hello friends,
    i'm new to jsp. i want to create an html form that accepts username and a value from four radio buttons and display back the entered name and checked radio button's value using java bean.
    i use the <jsp:setProperty id="" property="*"> method. i don't know how to access the radio buttons value from the html.
    also when i use an additional field other than username the jsp page is showing error.
    Please give me the correct method to use java bean with jsp in this circumstance.
    thank you.

    thank you, but i have a problem left. the case is like this.
    i got the jsp and bean worked fine when i have a sinle input text field.
    but when i added a second text field i recieved the following error.
    javax.servlet.ServletException: basket.newbean.getUserPass()Ljava/lang/String;
         org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
         org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
         org.apache.jsp.newform.process_jsp._jspService(process_jsp.java:69)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    where userPass is the new form element. I have made the subsequent chanes in my bean program and jsp file.
    pls hlp.

  • Compilation problem with templates while using option -m64

    Hi,
    I have compilation problem with template while using option -m64.
    No problem while using option -m32.
    @ uname -a
    SunOS snt5010 5.10 Generic_127111-11 sun4v sparc SUNW,SPARC-Enterprise-T5220
    $ CC -V
    CC: Sun C++ 5.9 SunOS_sparc Patch 124863-01 2007/07/25
    Here is some C++ program
    ############# foo5.cpp #############
    template <typename T, T N, unsigned long S = sizeof(T) * 8>
    struct static_number_of_ones
    static const T m_value = static_number_of_ones<T, N, S - 1>::m_value >> 1;
    static const unsigned long m_count = static_number_of_ones<T, N, S - 1>::m_count + (static_number_of_ones<T, N, S - 1>::m_value & 0x1);
    template <typename T, T N>
    struct static_number_of_ones<T, N, 0>
    static const T m_value = N;
    static const unsigned long m_count = 0;
    template <typename T, T N>
    struct static_is_power_of_2
    static const bool m_result = (static_number_of_ones<T,N>::m_count == 1);
    template <unsigned long N>
    struct static_number_is_power_of_2
    static const bool m_result = (static_number_of_ones<unsigned long, N>::m_count == 1);
    int main(int argc)
    int ret = 0;
    if (argc > 1)
    ret += static_is_power_of_2<unsigned short, 16>::m_result;
    ret += static_is_power_of_2<unsigned int, 16>::m_result;
    ret += static_is_power_of_2<unsigned long, 16>::m_result;
    ret += static_number_is_power_of_2<16>::m_result;
    else
    ret += static_is_power_of_2<unsigned short, 17>::m_result;
    ret += static_is_power_of_2<unsigned int, 17>::m_result;
    ret += static_is_power_of_2<unsigned long, 17>::m_result;
    ret += static_number_is_power_of_2<17>::m_result;
    return ret;
    Compiation:
    @ CC -m32 foo5.cpp
    // No problem
    @ CC -m64 foo5.cpp
    "foo5.cpp", line 20: Error: An integer constant expression is required here.
    "foo5.cpp", line 36: Where: While specializing "static_is_power_of_2<unsigned long, 16>".
    "foo5.cpp", line 36: Where: Specialized in non-template code.
    "foo5.cpp", line 26: Error: An integer constant expression is required here.
    "foo5.cpp", line 37: Where: While specializing "static_number_is_power_of_2<16>".
    "foo5.cpp", line 37: Where: Specialized in non-template code.
    "foo5.cpp", line 20: Error: An integer constant expression is required here.
    "foo5.cpp", line 43: Where: While specializing "static_is_power_of_2<unsigned long, 17>".
    "foo5.cpp", line 43: Where: Specialized in non-template code.
    "foo5.cpp", line 26: Error: An integer constant expression is required here.
    "foo5.cpp", line 44: Where: While specializing "static_number_is_power_of_2<17>".
    "foo5.cpp", line 44: Where: Specialized in non-template code.
    4 Error(s) detected.
    Predefined macro:
    @ CC -m32 -xdumpmacros=defs foo5.cpp | & tee log32
    @ CC -m64 -xdumpmacros=defs foo5.cpp | & tee log64
    @ diff log32 log64
    7c7
    < #define __TIME__ "09:24:58"
    #define __TIME__ "09:25:38"20c20
    < #define __sparcv8plus 1
    #define __sparcv9 1[snipped]
    =========================
    What is wrong?
    Thanks,
    Alex Vinokur

    Bug 6749491 has been filed for this problem. It will be visible at [http://bugs.sun.com] in a day or two.
    If you have a service contract with Sun, you can ask to have this bug's priority raised, and get a pre-release version of a compiler patch that fixes the problem.
    Otherwise, you can check for new patches from time to time at
    [http://developers.sun.com/sunstudio/downloads/patches/]
    and see whether this bug is listed as fixed.

Maybe you are looking for

  • Premiere Elements 9 - importing MPEG files hear sound but no picture

    Have just bought a new Dell XPS8300 i5-2320 3.3Ghz 12MB RAM 1.5TB computer and have Premiere Elements 9. Am trying to put video from my Olympus VR-310 camera into Premiere Elements. Have downloaded the MJPEG Codec. When I bring the video clips in, I

  • How do I configure the mixed signal graph property node to set the plot names

    I have a mixed signal graph displaying digital and analog data in two groups. I would like to programmatically set the names of individual plots i.e. rather that the digital graph displaying 'Digital 0->Line 0'  I would like to set it to 'Signal 1'  

  • Bar Codes

    Is there a way to generate barcodes in Acrobat XI Pro? I used it a lot in "Live Cycle Designer" that came with Acrobat 8 but when I installed version XI, it uninstalled Live Cycle as well. It is critical that I be able to have this function for one o

  • What are the Meaning ...

    Hi Guys, In Oracle HRMS, Termination form we have the Following dates such as Actual, Final, Projected, Last Standard Process, Final Process. I an just wondering what was the meaning for those dates ( Actual, Final, Projected, Last Standard Process,

  • Autocomplete in search box dropdown list fails in new version 5

    autocomplete in the search box dropdown fails in new version 5