2012-04-10 2 views
0

Grails 2.0.3으로 Grails 애플리케이션을 업그레이드하면 프로덕션 Tomcat에서 애플리케이션에 액세스 할 수 없습니다.Grails 2.0 외부화 된 구성에서 프로덕션 환경에서 애플리케이션에 액세스 할 수 없음 - HTTP 404

개발시 또는 "grails prod run-war"를 사용하여 응용 프로그램을 실행하면 응용 프로그램이 제대로 작동합니다. 하지만이 앱을 Tomcat (Tomcat 6 및 7에서 테스트)으로 이동하면 더 이상 앱에 액세스 할 수 없습니다. 제대로로드되지만 http://localhost:8080/appName에 접속하면 HTTP 404가 수신됩니다.

로그가 비어있어 문제가있는 곳을 찾을 수 없습니다. Config.groovy에서 외부화 된 구성로드를 제거하면 응용 프로그램이 작동합니다! 정말 이상해. Config.groovy :

grails.config.locations = ["file:/home/user/application_homes/app_home/app-config.properties"] 

같은 문제에 직면 했습니까? Grails 1.3.7에서 Grails 2.0.3으로 바뀌 었습니다.

어떤 조언을 주셔서 감사합니다! 내가이 나타납니다 당신과 똑같은 문제에 봉착

+0

'/ home/user/application_homes/app_home/app-config.properties'가 tomcat 서버에 있고 tomcat 프로세스를 실행하는 uid로 읽을 수 있다고 가정합니까? –

+0

예, 관련 액세스 권한이있는 경우에도 존재합니다. 또한 Config.groovy에서 이것을 제어합니다. – kuceram

답변

0

...

내가 로그에 아무것도 얻을 ...

그것은 단지 시작되지 않는 ...이 실패 :

0/04/2012 2:17:36 PM org.apache.catalina.core.StandardContext start 
SEVERE: Error listenerStart 
20/04/2012 2:17:36 PM org.apache.catalina.core.StandardContext start 
SEVERE: Context [/abcd] startup failed due to previous errors 

우리가 의 grails.config.locations 섹션에서 클래스 경로 스프링 형식을 사용할 때 작동하는 것 같다.

우리는 또한 grails 2.0.3에 막 버그가 있습니까?

0

같은 문제가 발생합니다. 우리는 실제로 system/Env 변수 나 -Dconfig.file = 정의를 사용하여 grails.configuration.locations를 지정하는 두 가지 방법을 가지고 있습니다. 은/봉투에있어서, 상기 시스템을 사용하는 경우

file:/full-path/the-config.file.properties 

: 환경 변수 부하를 사용하여, 이것은 -Dconfig.file 지정된 경우

classpath:the-config-file.properties 

라인, 그것이 파일 기반 평가자 사용 원인 구성이 잘로드됩니다! 'file'검색을 사용하자마자 Tomcat이 시작되지 않습니다.

IT는 internalConfigurationAnnotationProcessor 빈을 만든 후 바로 실패 할 같습니다 괴상한 부분은 단지 file:<>classpath:<> 정의에서 변화

2012-04-22 22:35:53,514 (main) DEBUG [org.codehaus.groovy.grails.commons.spring.GrailsWebApplicationContext] - <Bean factory for org.co[email protected]17bcd4: org.codehaus.gro[email protected]752144: defining beans [org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,....<--- (left out the big list of others) 
2012-04-22 22:35:53,538 (main) DEBUG [org.codehaus.groovy.grails.commons.spring.ReloadAwareAutowireCapableBeanFactory] - <Creating shared instance of singleton bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'> 
2012-04-22 22:35:53,538 (main) DEBUG [org.codehaus.groovy.grails.commons.spring.ReloadAwareAutowireCapableBeanFactory] - <Creating instance of bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'> 
2012-04-22 22:35:53,547 (main) DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory] - <Returning cached instance of singleton bean 'grailsApplication'> 
2012-04-22 22:35:53,547 (main) DEBUG [org.codehaus.groovy.grails.commons.spring.ReloadAwareAutowireCapableBeanFactory] - <Eagerly caching bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor' to allow for resolving potential circular references> 
2012-04-22 22:35:53,548 (main) DEBUG [org.codehaus.groovy.grails.commons.spring.ReloadAwareAutowireCapableBeanFactory] - <Finished creating instance of bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'> 
2012-04-22 22:35:53,667 (main) INFO [org.codehaus.groovy.grails.commons.spring.ReloadAwareAutowireCapableBeanFactory] - <Destroying singletons in org.codehaus.gro[email protected]752144 
22/04/2012 10:35:53 PM org.apache.catalina.core.StandardContext start 
SEVERE: Error listenerStart 

이 문제를 일으키는 것입니다. 디버그 문을 grails Config.groovy 파일에 넣었으며 파일의 내용이 잘 읽혔습니다.

관련 문제