0

我们有一个由 grails 2.1.4 和 JDK 1.7 实现的应用程序,我们需要将其迁移到 grails 2.4.0 和 JDK 1.8。

在更新到 grails 2.4.0 时,以下是我们完成的更改。

  1. 更新了 BuildConfig.groovy 和 application.properties 文件中的所有插件。
  2. 许多类已弃用,因此我使用了 grails.util.Holders 类而不是以下已弃用的类。

    org.codehaus.groovy.grails.commons.ApplicationHolder org.codehaus.groovy.grails.commons.ConfigurationHolder org.codehaus.groovy.grails.plugins.PluginManagerHolder

  3. 对于少数类,我已根据 grails 2.4.0 更改了导入包

  4. 最新的richUI 插件不可用,所以我在richUI 插件groovy 类中更新了Holders 类而不是ConfigurationHolder。

成功构建战争并在tomcat中部署战争。

问题是无法将链接从 urlmappings.groovy 重定向到主控制器和适当的 gsp。

  1. 试图重定向到 project(index.gsp) 中的另一个 gsp,但它不能。
  2. 创建了新的 gsp(hello.gsp) 并从 urlmappings.groovy 重定向到 hello.gsp,但它不起作用。

尝试加载应用程序 URL http://localhost:8080/abc时,它将重定向到http://localhost:8080/abc/login/auth显示页面无法显示

在调试时,控制从 urlmappings.groovy 转到 bootstrap.groovy,而且它不会在任何地方导航。

任何帮助表示赞赏。提前致谢

添加 Urlmappings.groovy

static mappings = {
"/$controller/$action?/$id?"{ constraints {
// 在这里应用约束
} }

// Home
"/"(controller:"home",action:"index")

// 报告服务urls
"/services/report"(controller: "BirtReport"){
action=[GET:"list"]
}

"500"(view:'/error')
}

在运行应用程序时,我在 stacktrace.log 中收到以下错误

错误 context.GrailsContextLoaderListener - 初始化应用程序时出错:在 ServletContext 资源 [/WEB-INF/applicationContext.xml] 中定义名称为“pluginManager”的 bean 创建错误:调用 init 方法失败;嵌套异常是 java.lang.RuntimeException:无法使用类 org.codehaus.groovy.grails.commons.DefaultGrailsS​​erviceClass 类 org.springframework.beans.factory.BeanCreationException 的类参数找到构造函数:创建 ServletContext 中定义的名称为“pluginManager”的 bean 时出错资源[/WEB-INF/applicationContext.xml]:init方法调用失败;嵌套异常是 java.lang.RuntimeException: Unable to locate constructor with Class parameter for class org.codehaus.groovy.grails.commons.DefaultGrailsS​​erviceClass
在 java.util.concurrent.FutureTask.run(FutureTask.java:266)
在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java :617)
在 java.lang.Thread.run(Thread.java:745)
引起:java.lang.RuntimeException: 无法使用类 org.codehaus.groovy.grails.commons.DefaultGrailsS​​erviceClass 的类参数找到构造函数
... 4 更多
原因:java.lang.reflect.InvocationTargetException
... 4 更多
原因:java.lang.NoClassDefFoundError: org/pentaho/di/core/logging/LogLevel
at java.lang.Class.privateGetDeclaredMethods(Class.java:第2693章
在 java.lang.Class.getDeclaredMethods(Class.java:1967)
... 4 更多
原因:java.lang.ClassNotFoundException: org.pentaho.di.core.logging.LogLevel
at java.net.URLClassLoader$1.run( URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java: 424)
在 java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 还有 6 个

4

0 回答 0