crypto 간소화 서비스 중 에러가 납니다. (2)
- 작성자 :
- 김*섭
- 작성일 :
- 2019-09-18 09:27:06
- 조회수 :
- 2,201
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
간소화 서비스를 위키를 보면서 적용시키는 중 에러가 발생하여 질문드립니다.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:egov-crypto="http://www.egovframe.go.kr/schema/egov-crypto"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.egovframe.go.kr/schema/egov-crypto http://www.egovframe.go.kr/schema/egov-crypto/egov-crypto-3.8.xsd">
<!--
initial : globals.properties 연계 Url, UserName, Password 값 로드 여부(설정값 : true, false)
crypto : 계정 암호화 여부(설정값 : true, false)
algorithm : 계정 암호화 알고리즘
algorithmKey : 계정 암호화키 키
cryptoBlockSize : 계정 암호화키 블록사이즈
-->
<egov-crypto:config id="egovCryptoConfig"
initial="false"
crypto="true"
algorithm="SHA-256"
algorithmKey="암호화 키 값"
algorithmKeyHash="암호화 키 해쉬 값"
cryptoBlockSize="1024"
/>
</beans>
설정파일인 context-crypto.xml은 위 와 같이 구성되어 있습니다.
String[] arrCryptoString = {
"", //데이터베이스 접속 계정 설정
"", //데이터베이스 접속 패드워드 설정
"", //데이터베이스 접속 주소 설정
"" //데이터베이스 드라이버
};
LOGGER.info("------------------------------------------------------");
ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"classpath:/egovframework/spring/com/context-crypto.xml"});
EgovEnvCryptoService cryptoService = context.getBean(EgovEnvCryptoServiceImpl.class);
LOGGER.info("------------------------------------------------------");
위 파일은 각종 DB Connect 정보들의 암호화 값을 얻기 위해 위키에서 제시한 코드입니다.
위 코드 중 ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"classpath:/egovframework/spring/com/context-crypto.xml"}); 부분에서
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'egovEnvCryptoConfigurerService' defined in InputStream resource [resource loaded through InputStream]: Invocation of init method failed; nested exception is org.springframework.context.NoSuchMessageException: No message found under code 'error.properties.initialize.reason' for locale 'ko_KR'.
이러한 에러가 납니다.
답변 부탁드리겠습니다. 감사합니다.
=========================================================================
각종 DB Connect 정보들의 암호화 값을 얻기 위해 위키에서 제시한 코드를 실행했는데요.
위와 같은 에러가 발생한것입니다.
답변 주신 내용을 적용하기도 전에 Connect정보들의 암호화 값을 얻지 못해 질문 드립니다.
현재 적용한 버전은 egovFrameWork 3.8 입니다.
감사합니다.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:egov-crypto="http://www.egovframe.go.kr/schema/egov-crypto"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.egovframe.go.kr/schema/egov-crypto http://www.egovframe.go.kr/schema/egov-crypto/egov-crypto-3.8.xsd">
<!--
initial : globals.properties 연계 Url, UserName, Password 값 로드 여부(설정값 : true, false)
crypto : 계정 암호화 여부(설정값 : true, false)
algorithm : 계정 암호화 알고리즘
algorithmKey : 계정 암호화키 키
cryptoBlockSize : 계정 암호화키 블록사이즈
-->
<egov-crypto:config id="egovCryptoConfig"
initial="false"
crypto="true"
algorithm="SHA-256"
algorithmKey="암호화 키 값"
algorithmKeyHash="암호화 키 해쉬 값"
cryptoBlockSize="1024"
/>
</beans>
설정파일인 context-crypto.xml은 위 와 같이 구성되어 있습니다.
String[] arrCryptoString = {
"", //데이터베이스 접속 계정 설정
"", //데이터베이스 접속 패드워드 설정
"", //데이터베이스 접속 주소 설정
"" //데이터베이스 드라이버
};
LOGGER.info("------------------------------------------------------");
ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"classpath:/egovframework/spring/com/context-crypto.xml"});
EgovEnvCryptoService cryptoService = context.getBean(EgovEnvCryptoServiceImpl.class);
LOGGER.info("------------------------------------------------------");
위 파일은 각종 DB Connect 정보들의 암호화 값을 얻기 위해 위키에서 제시한 코드입니다.
위 코드 중 ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"classpath:/egovframework/spring/com/context-crypto.xml"}); 부분에서
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'egovEnvCryptoConfigurerService' defined in InputStream resource [resource loaded through InputStream]: Invocation of init method failed; nested exception is org.springframework.context.NoSuchMessageException: No message found under code 'error.properties.initialize.reason' for locale 'ko_KR'.
이러한 에러가 납니다.
답변 부탁드리겠습니다. 감사합니다.
=========================================================================
각종 DB Connect 정보들의 암호화 값을 얻기 위해 위키에서 제시한 코드를 실행했는데요.
위와 같은 에러가 발생한것입니다.
답변 주신 내용을 적용하기도 전에 Connect정보들의 암호화 값을 얻지 못해 질문 드립니다.
현재 적용한 버전은 egovFrameWork 3.8 입니다.
감사합니다.
A
안녕하십니까, 표준프레임워크센터입니다.
앞선 답변은 제가 현재 서비스 구축이 완료된 것으로 생각하여 단 것 같습니다.
테스트해서 똑같은 에러로그를 만들어본 결과...
즉, error creating bean with name 'egovEnvCryptoConfigurerService' defined in InputStream resource [resource loaded through InputStream]: Invocation of init method failed; nested exception is org.springframework.context.NoSuchMessageException: No message found under code 'error.properties.initialize.reason' for locale 'ko_KR'.
여기를 보시면 될 것 같습니다.
Exception에 대한 메세지를 못찾고 있는 부분인대, context-crpyto.xml 쪽에,
<bean name="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="useCodeAsDefaultMessage">
<value>true</value>
</property>
<property name="basenames">
<list>
<value>classpath:/egovframework/egovProps/globals</value>
</list>
</property>
</bean>
message 부분을 추가해주시면 됩니다.
메세지 소스에 대한 부분 때문에 해당 오류가 발생하오니, 리소스번들메세지 소스 빈을 추가해주신 후 다시 자바어플리케이션을 실행하시면,
결과를 얻으실 것 입니다.
감사합니다.
앞선 답변은 제가 현재 서비스 구축이 완료된 것으로 생각하여 단 것 같습니다.
테스트해서 똑같은 에러로그를 만들어본 결과...
즉, error creating bean with name 'egovEnvCryptoConfigurerService' defined in InputStream resource [resource loaded through InputStream]: Invocation of init method failed; nested exception is org.springframework.context.NoSuchMessageException: No message found under code 'error.properties.initialize.reason' for locale 'ko_KR'.
여기를 보시면 될 것 같습니다.
Exception에 대한 메세지를 못찾고 있는 부분인대, context-crpyto.xml 쪽에,
<bean name="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="useCodeAsDefaultMessage">
<value>true</value>
</property>
<property name="basenames">
<list>
<value>classpath:/egovframework/egovProps/globals</value>
</list>
</property>
</bean>
message 부분을 추가해주시면 됩니다.
메세지 소스에 대한 부분 때문에 해당 오류가 발생하오니, 리소스번들메세지 소스 빈을 추가해주신 후 다시 자바어플리케이션을 실행하시면,
결과를 얻으실 것 입니다.
감사합니다.