GWT + Spring 托管模式不起作用
我有以下问题,也许有人可以帮助我?
我有一个 Spring MVC 应用程序,非常基本的应用程序,带有一些简单的 jsp 页面。
我还集成了 Spring Security。
现在我需要向一页添加一些 GWT 小部件。到目前为止没问题,我已经添加了
当我编译 GWT 然后将应用程序部署到 tomcat 时 - 一切正常,我打开应用程序,登录它,打开我的页面并查看 GWT UI 组件。
现在我想在托管模式下打开我的应用程序。问题就开始了。
当我启动托管模式时,Jetty 启动,Spring 框架初始化,然后我的 jsp(翻译为 .htm)在没有托管模式参数 ?gwt.codesvr=127.0.0.1:9997 的情况下打开。打开我的页面后,如果删除编译的 gwt 代码,我什么也看不到。
当我手动添加“?gwt.codesvr=127.0.0.1:9997”托管模式启动时,GWT 模块开始加载。这是我收到错误的时候:
12:57:15.589 [错误] [rehabrental] 无法加载模块“testmodule” 来自用户代理“Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.23) Gecko/20110920 Firefox/3.6.23' at 127.0.0.1:63260
java.lang.NoSuchFieldError:警告阈值位于 com.google.gwt.dev.javac.JdtCompiler.getCompilerOptions(JdtCompiler.java:413) 在 com.google.gwt.dev.javac.JdtCompiler$CompilerImpl.
(JdtCompiler.java:228) 在 com.google.gwt.dev.javac.JdtCompiler.doCompile(JdtCompiler.java:700)
在 com.google.gwt.dev.javac.CompilationStateBuilder$CompileMoreLater.compile(CompilationStateBuilder.java:235) 在 com.google.gwt.dev.javac.CompilationStateBuilder.doBuildFrom(CompilationStateBuilder.java:447) 在 com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:370) 在 com.google.gwt.dev.cfg.ModuleDef.getCompilationState(ModuleDef.java:360) 在 com.google.gwt.dev.DevModeBase$UiBrowserWidgetHostImpl.createModuleSpaceHost(DevModeBase.java:110) 在 com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:197) 在 java.lang.Thread.run(来源不明)
I have a following problem, probably somebody can help me?
I had an Spring MVC application, quite basic one, with a few simple jsp pages.
Also I had an Spring Security integrated with it.
Now I need to add some GWT widget to one page. No problem so far, I've added <div> to the page, added GWT module, all all needed GWT logic.
When I compile GWT and then deploy application to tomcat - everything works perfectly, I open app, login into it, open my page and see GWT UI components.
Now I want to open my application in hosted mode. There problems begin.
When I start hosted mode, Jetty starts, Spring framework initialize, and then my jsp (translated as .htm) open without hosted mode param ?gwt.codesvr=127.0.0.1:9997. After opening my page I see nothing if I delete compiled gwt code.
When I manually add "?gwt.codesvr=127.0.0.1:9997" hosted mode start and GWT module begin to load. This is when I get an error:
12:57:15.589 [ERROR] [rehabrental] Failed to load module 'testmodule'
from user agent 'Mozilla/5.0 (Windows; U; Windows NT 6.1; ru;
rv:1.9.2.23) Gecko/20110920 Firefox/3.6.23' at 127.0.0.1:63260java.lang.NoSuchFieldError: warningThreshold at
com.google.gwt.dev.javac.JdtCompiler.getCompilerOptions(JdtCompiler.java:413)
at
com.google.gwt.dev.javac.JdtCompiler$CompilerImpl.<init>(JdtCompiler.java:228)
at
com.google.gwt.dev.javac.JdtCompiler.doCompile(JdtCompiler.java:700)
at
com.google.gwt.dev.javac.CompilationStateBuilder$CompileMoreLater.compile(CompilationStateBuilder.java:235)
at
com.google.gwt.dev.javac.CompilationStateBuilder.doBuildFrom(CompilationStateBuilder.java:447)
at
com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:370)
at
com.google.gwt.dev.cfg.ModuleDef.getCompilationState(ModuleDef.java:360)
at
com.google.gwt.dev.DevModeBase$UiBrowserWidgetHostImpl.createModuleSpaceHost(DevModeBase.java:110)
at
com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:197)
at java.lang.Thread.run(Unknown Source)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你用eclipse吗?如果是这样,您需要重新排列导出的模块,因为 JDT 类会导致 GWT 编译器出现问题。请参阅此 GWT 问题中的评论 #7,了解如何将 GWT 依赖项置于其他依赖项之上,以便编译器首先拾取它们。
Do you use eclipse ?. If so you need rearrange your exported modules as JDT classes causes problems with the GWT compiler. See comment #7 in this GWT issue about pushing GWT dependencies above others, so that they are picked up first by the compiler.