Failed to load the widgetset error

Hello, I’m new to the Vaadin, and I’m facing the following error with my application.


Failed to load the widgetset: /Zeeik/VAADIN/widgetsets/com.compeprice.zeeik.app.ui.custom.Com_compeprice_zeeikWidgetset/com.compeprice.zeeik.app.ui.custom.Com_compeprice_zeeikWidgetset.nocache.js?1310890008676

I did some test on this, and I find out a simple way to reproduce the same problem.

Create a Vaadin project(named ‘VaadinTest’) and change the web.xml like this.


Original web.xml


        ....
	<servlet-mapping>
		<servlet-name>Vaadin_test Application</servlet-name>
		<url-pattern>/*</url-pattern>
	</servlet-mapping>
        ...
 


And, I changed it


        ....
	<servlet-mapping>
		<servlet-name>Vaadin_test Application</servlet-name>
		<url-pattern>/test/*</url-pattern>
	</servlet-mapping>
        ...
 

with this web.xml, if I open ‘http://localhost:8080/VaadinTest/test’ then the same problem occured.

The Vaadin version is 6.6.1

I hope somebody solve this problem.

Hi,

Essentially, all requests to http:/yourapplication/VAADIN/* need to go to the Vaadin ApplicationServlet. You can achieve that simply in your testcase by adding the following to your web.xml

<servlet-mapping>
    <servlet-name>Vaadin_test Application</servlet-name>
    <url-pattern>/VAADIN/*</url-pattern>
 </servlet-mapping>

This is covered in the
Book of Vaadin, section 4.8

Cheers,

Charles.

Thank you Charles,

I defined a dummy Vaadin ApplicationServlet and add a mapping of ‘/VAADIN/*’ and the dummy servlet.


Then the program solved

next time, I should check the book more carefully before post a question :slight_smile:

Cheers~!

You don’t need a separate servlet for /VAADIN/* - you can map it to the same Vaadin servlet that is serving the application itself.

I created a hello world vaadin project name Test1. When i tried compile vaadin widgets i have same problem. I tried to change web.xml to

<servlet-mapping>
    <servlet-name>Vaadin_test Application</servlet-name>
    <url-pattern>/VAADIN/*</url-pattern>
 </servlet-mapping>

but it didnt solve.

My error message

Starting GWT compiler
May 24, 2012 10:47:47 AM com.vaadin.terminal.gwt.widgetsetutils.ClassPathExplorer getPaintablesHavingWidgetAnnotation
INFO: Searching for paintables..
May 24, 2012 10:47:48 AM com.vaadin.terminal.gwt.widgetsetutils.ClassPathExplorer getPaintablesHavingWidgetAnnotation
INFO: Search took 462ms
Compiling module com.example.test1.widgetset.Test1Widgetset
   Compiling 6 permutations
      [ERROR]
 Unexpected internal compiler error
java.lang.IllegalArgumentException: No enum constant com.google.gwt.dev.js.JsStackEmulator.StackMode.NATİVE
	at java.lang.Enum.valueOf(Enum.java:236)
	at com.google.gwt.dev.js.JsStackEmulator$StackMode.valueOf(JsStackEmulator.java:801)
	at com.google.gwt.dev.js.JsStackEmulator.getStackMode(JsStackEmulator.java:824)
	at com.google.gwt.dev.jjs.impl.GenerateJavaScriptAST.<init>(GenerateJavaScriptAST.java:2097)
	at com.google.gwt.dev.jjs.impl.GenerateJavaScriptAST.exec(GenerateJavaScriptAST.java:2000)
	at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.compilePermutation(JavaToJavaScriptCompiler.java:310)
	at com.google.gwt.dev.jjs.UnifiedAst.compilePermutation(UnifiedAst.java:136)
	at com.google.gwt.dev.CompilePerms.compile(CompilePerms.java:192)
	at com.google.gwt.dev.ThreadedPermutationWorkerFactory$ThreadedPermutationWorker.compile(ThreadedPermutationWorkerFactory.java:49)
	at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
	at java.lang.Thread.run(Thread.java:722)
      [ERROR]
 Unrecoverable exception, shutting down
com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries)
	at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.logAndTranslateException(JavaToJavaScriptCompiler.java:1155)
	at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.compilePermutation(JavaToJavaScriptCompiler.java:460)
	at com.google.gwt.dev.jjs.UnifiedAst.compilePermutation(UnifiedAst.java:136)
	at com.google.gwt.dev.CompilePerms.compile(CompilePerms.java:192)
	at com.google.gwt.dev.ThreadedPermutationWorkerFactory$ThreadedPermutationWorker.compile(ThreadedPermutationWorkerFactory.java:49)
	at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
	at java.lang.Thread.run(Thread.java:722)
      [ERROR]
 Not all permutation were compiled , completed (0/6)
      [WARN]
 Lost communication with remote process
java.net.SocketException: Socket closed
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:150)
	at java.net.SocketInputStream.read(SocketInputStream.java:121)
	at java.net.SocketInputStream.read(SocketInputStream.java:203)
	at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2266)
	at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2559)
	at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2569)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1315)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
	at com.google.gwt.dev.ExternalPermutationWorkerFactory$ExternalPermutationWorker.compile(ExternalPermutationWorkerFactory.java:150)
	at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
	at java.lang.Thread.run(Thread.java:722)
      [WARN]
 Lost communication with remote process
java.net.SocketException: Socket closed
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:150)
	at java.net.SocketInputStream.read(SocketInputStream.java:121)
	at java.net.SocketInputStream.read(SocketInputStream.java:203)
	at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2266)
	at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2559)
	at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2569)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1315)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
	at com.google.gwt.dev.ExternalPermutationWorkerFactory$ExternalPermutationWorker.compile(ExternalPermutationWorkerFactory.java:150)
	at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
	at java.lang.Thread.run(Thread.java:722)
      [WARN]
 Lost communication with remote process
java.net.SocketException: Socket closed
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:150)
	at java.net.SocketInputStream.read(SocketInputStream.java:121)
	at java.net.SocketInputStream.read(SocketInputStream.java:203)
	at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2266)
	at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2559)
	at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2569)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1315)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
	at com.google.gwt.dev.ExternalPermutationWorkerFactory$ExternalPermutationWorker.compile(ExternalPermutationWorkerFactory.java:150)
	at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
	at java.lang.Thread.run(Thread.java:722)
      [WARN]
 Lost communication with remote process
java.net.SocketException: Socket closed
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:150)
	at java.net.SocketInputStream.read(SocketInputStream.java:121)
	at java.net.SocketInputStream.read(SocketInputStream.java:203)
	at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2266)
	at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2559)
	at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2569)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1315)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
	at com.google.gwt.dev.ExternalPermutationWorkerFactory$ExternalPermutationWorker.compile(ExternalPermutationWorkerFactory.java:150)
	at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
	at java.lang.Thread.run(Thread.java:722)
      [WARN]
 Lost communication with remote process
java.net.SocketException: Socket closed
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:150)
	at java.net.SocketInputStream.read(SocketInputStream.java:121)
	at java.net.SocketInputStream.read(SocketInputStream.java:203)
	at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2266)
	at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2559)
	at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2569)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1315)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
	at com.google.gwt.dev.ExternalPermutationWorkerFactory$ExternalPermutationWorker.compile(ExternalPermutationWorkerFactory.java:150)
	at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
	at java.lang.Thread.run(Thread.java:722)
Widgetset compilation failed

I hope somebody solve this problem.

Thank You.

Ubuntu 12.04 LTS
JDK 1.7.0
Eclipse Indigo
Vaadin Plug-in 2.0.1
vaadin-6.7.6.jar

This setting in web.xml only affects execution, not GWT compilation.

If you map /VAADIN/, you also need to map your application to the same servlet. Alternatively, you can just map / to your servlet - that way, also requests to /VAADIN/* go to your servlet.

I don’t recall having seen this before. I would recommend checking if using Oracle JDK 1.6 for widgetset compilation helps. Widgetsets are compiled by the plug-in with the project or workspace JDK as long as it meets minimum requirements for the GWT version used, so you can change the project JDK to point to a JDK 1.6 installation and retry compiling the widgetset.

Thank you Henri.

We have another vaadin project on JDK 1.7 but there is no a problem. But i understood you talking about recommendation about minimum requirements for the GWT version, thanks.

I still working on it.