Exception when first loading application in WebSphere 8

Hello all,

I tried to run a very simple Vaadin application in WebSphere v8.0.0.2 that only has a very simple form. I am using Vaadin v6.7.4. The first time I load the application into the browser it throws the exception shown below. This exception is only shown only the first time and on other requests the application works normally. Any advice would be appreciated.

terminalError An error occurred java.lang.ExceptionInInitializerError
at java.lang.J9VMInternals.initialize(J9VMInternals.java:250)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:195)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:195)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:195)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:195)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:195)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:195)
at java.lang.Class.forNameImpl(Native Method)
at java.lang.Class.forName(Class.java:168)
at com.ibm.oti.reflect.AnnotationParser.parseClass(AnnotationParser.java:205)
at com.ibm.oti.reflect.AnnotationParser.parseElementValue(AnnotationParser.java:158)
at com.ibm.oti.reflect.AnnotationParser.parseAnnotation(AnnotationParser.java:131)
at com.ibm.oti.reflect.AnnotationParser.parseAnnotations(AnnotationParser.java:57)
at java.lang.Class.getDeclaredAnnotations(Class.java:1662)
at java.lang.Class.getAnnotations(Class.java:1619)
at java.lang.Class.getAnnotation(Class.java:1599)
at java.lang.Class.isAnnotationPresent(Class.java:1693)
at com.vaadin.terminal.gwt.server.JsonPaintTarget.hasClientWidgetMapping(JsonPaintTarget.java:1054)
at com.vaadin.terminal.gwt.server.JsonPaintTarget.getTag(JsonPaintTarget.java:1029)
at com.vaadin.ui.AbstractComponent.paint(AbstractComponent.java:734)
at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.writeUidlResponce(AbstractCommunicationManager.java:1046)
at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.paintAfterVariableChanges(AbstractCommunicationManager.java:927)
at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.doHandleUidlRequest(AbstractCommunicationManager.java:794)
at com.vaadin.terminal.gwt.server.CommunicationManager.handleUidlRequest(CommunicationManager.java:296)
at com.vaadin.terminal.gwt.server.AbstractApplicationServlet.service(AbstractApplicationServlet.java:501)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1188)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:763)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:454)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1020)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:895)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1659)
Caused by: java.lang.UnsupportedOperationException: ERROR: GWT.create() is only usable in client code! It cannot be called, for example, from server code. If you are running a unit test, check that your test case extends GWTTestCase and that GWT.create() is not called from within an initializer or constructor.
at com.google.gwt.core.client.GWT.create(GWT.java:92)
at com.google.gwt.user.client.ui.UIObject.(UIObject.java:188)
at java.lang.J9VMInternals.initializeImpl(Native Method)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:228)
… 46 more

You need to mark application as “metadata complete”

You can even set this attribute in web.xml

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5" metadata-complete="true">