Uploaded image for project: 'JBoss WFK 2'
  1. JBoss WFK 2
  2. WFK2-329

Problem with building GWT apps on openshift

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: 2.4.0.GA, 2.5.0.GA, 2.6.0.GA, 2.7.0.GA
    • Fix Version/s: None
    • Component/s: GWT
    • Labels:
    • Target Release:
    • Workaround:
      Workaround Exists
    • Workaround Description:
      Hide

      set this option:
      -Dgwt.jjs.permutationWorkerFactory=com.google.gwt.dev.ThreadedPermutationWorkerFactory
      as an Extra JVM argument for gwt-maven-plugin

      Show
      set this option: -Dgwt.jjs.permutationWorkerFactory=com.google.gwt.dev.ThreadedPermutationWorkerFactory as an Extra JVM argument for gwt-maven-plugin
    • Release Notes Docs Status:
      Documented as Known Issue
    • Release Notes Text:
      Hide
      Workers compiling Google Web Toolkit applications communicate via sockets with a port number that is forbidden on OpenShift. Consequently, compilation of Google Web Toolkit applications on OpenShift fails with the following error message:

      [ERROR] Unable to create socket
      java.net.BindException: Permission denied

      To work around the issue, create the workers using the ThreadedPermutationWorkerFactory.java class instead of the default ExternalPermutationWorkerFactory.java class. This can be achieved by setting the following extra JVM argument in the settings of the GWT Maven plug-in:

      <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>gwt-maven-plugin</artifactId>
      ...
      <configuration> <extraJvmArgs>-Dgwt.jjs.permutationWorkerFactory=com.google.gwt.dev.ThreadedPermutationWorkerFactory</extraJvmArgs>
      ...
      </configuration>
      ...
      </plugin>

      With this option set, workers are created in new threads, do not use any sockets, and compilation of Google Web Toolkit applications on OpenShift can be performed successfully.
      Show
      Workers compiling Google Web Toolkit applications communicate via sockets with a port number that is forbidden on OpenShift. Consequently, compilation of Google Web Toolkit applications on OpenShift fails with the following error message: [ERROR] Unable to create socket java.net.BindException: Permission denied To work around the issue, create the workers using the ThreadedPermutationWorkerFactory.java class instead of the default ExternalPermutationWorkerFactory.java class. This can be achieved by setting the following extra JVM argument in the settings of the GWT Maven plug-in: <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>gwt-maven-plugin</artifactId> ... <configuration> <extraJvmArgs>-Dgwt.jjs.permutationWorkerFactory=com.google.gwt.dev.ThreadedPermutationWorkerFactory</extraJvmArgs> ... </configuration> ... </plugin> With this option set, workers are created in new threads, do not use any sockets, and compilation of Google Web Toolkit applications on OpenShift can be performed successfully.

      Description

      I'm not able to build a GWT application on OpenShift. It always fails duing compilation with this error:

      [ERROR] Unable to create socket
      	 java.net.BindException: Permission denied
      	 	at java.net.PlainSocketImpl.socketBind(Native Method)
      	 	at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
      	 	at java.net.ServerSocket.bind(ServerSocket.java:376)
      	 	at java.net.ServerSocket.bind(ServerSocket.java:330)
      	 	at com.google.gwt.dev.ExternalPermutationWorkerFactory.init(ExternalPermutationWorkerFactory.java:383)
      	 	at com.google.gwt.dev.PermutationWorkerFactory.createAll(PermutationWorkerFactory.java:314)
      	 	at com.google.gwt.dev.PermutationWorkerFactory.createWorkers(PermutationWorkerFactory.java:355)
      	 	at com.google.gwt.dev.PermutationWorkerFactory.compilePermutations(PermutationWorkerFactory.java:267)
      	 	at com.google.gwt.dev.CompilePerms.compile(CompilePerms.java:207)
      	 	at com.google.gwt.dev.Compiler.run(Compiler.java:242)
      	 	at com.google.gwt.dev.Compiler.run(Compiler.java:198)
      	 	at com.google.gwt.dev.Compiler$1.run(Compiler.java:170)
      	 	at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:88)
      	 	at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:82)
      	 	at com.google.gwt.dev.Compiler.main(Compiler.java:177)
      

      The problem is that the workers (used for compilation) communicate by sockets with a port number which is on OpenShift forbidden.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                mjobanek Matous Jobanek
                Reporter:
                mjobanek Matous Jobanek
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: