我在grails 1.3.7中创建了一个简单的项目。现在我正在完成版本更改的任务。首先我将1.3.7项目带到了2.4.4。它运行得很好。 我在我的文件BuildConfig.groovy文件,urlmapping,index.gsp,applicationcontext.xml,application.pro中所做的更改
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="grailsApplication" class="org.codehaus.groovy.grails.commons.GrailsApplicationFactoryBean">
<description>Grails application factory bean</description>
<property name="grailsDescriptor" value="/WEB-INF/grails.xml"/>
<!--<property name="grailsResourceLoader" ref="grailsResourceLoader" />-->
</bean>
<bean id="pluginManager" class="org.codehaus.groovy.grails.plugins.GrailsPluginManagerFactoryBean">
<description>A bean that manages Grails plugins</description>
<property name="grailsDescriptor" value="/WEB-INF/grails.xml"/>
<property name="application" ref="grailsApplication"/>
</bean>
<bean id="grailsConfigurator" class="org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator">
<constructor-arg>
<ref bean="grailsApplication"/>
</constructor-arg>
<property name="pluginManager" ref="pluginManager"/>
</bean>
<!--<bean id="grailsResourceLoader" class="org.codehaus.groovy.grails.commons.GrailsResourceLoaderFactoryBean">-->
<!--<property name="grailsResourceHolder" ref="grailsResourceHolder" />-->
<!--</bean>-->
<!--<bean id="grailsResourceHolder" scope="prototype" class="org.codehaus.groovy.grails.commons.spring.GrailsResourceHolder">-->
<!--<property name="resources">-->
<!--<value>classpath*:**/grails-app/**/*.groovy</value>-->
<!--</property>-->
<!--</bean> -->
<bean id="characterEncodingFilter"
class="org.springframework.web.filter.CharacterEncodingFilter">
<property name="encoding">
<value>utf-8</value>
</property>
</bean>
<bean id="conversionService"
class="org.springframework.context.support.ConversionServiceFactoryBean" />
urlMappings
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?(.$format)?"{
constraints {
// apply constraints here
}
}
"/"(view:"/index")
"500"(view:'/error')
}
}
index.gsp文件中的
%{--<li>Groovy version:
${org.codehaus.groovy.runtime.InvokerHelper.getVersion()} </li>--}% to
<li>Groovy version: ${GroovySystem.getVersion()}</li>
现在我正在尝试将其从2.4.4转换为2.5.3。但是出现了错误。
错误是
[localhost-startStop-1] ERROR context.GrailsContextLoaderListener - Error
initializing the application:Error creating bean with name
'defaultGrailsintConverter':
Injection of autowired dependencies failed; nested exception is
org.springframework.beans.factory.BeanCreationException:
Could not autowire field: private
org.springframework.web.servlet.LocaleResolver
org.grails.databinding.converters.web.LocaleAwareNumberConverter.
localeResolver;
请帮帮我。我应该编译spring security插件吗?
答案 0 :(得分:0)
您可能希望列出在升级中执行的步骤。您更改了哪些文件,更改了哪些依赖项等等。
此外,还有一些关于升级的博客。并非所有应用程序都使用相同的Grails,因此并非所有升级都是相同的。这是一对夫妇: http://totalprogus.blogspot.com/2015/03/upgrade-grails-244-to-250.html http://peedeebeesblog.blogspot.com/2015/06/moving-up-grails-243-to-250.html
最后,每一卷Grails都有一个发行说明,提供有关升级期间可能需要做什么的说明。以下是2.5.0的注释: https://github.com/grails/grails-core/releases/tag/v2.5.0
你的错误看起来不像Spring Security Plugin,只是Spring注入,虽然它有点难以分辨格式。