객체 정의를 참조하는 spring.net 표현식
-
05-07-2019 - |
문제
표현식 내에서 스프링 구성 파일로 정의한 다른 객체를 참조하려고합니다. 구체적으로, 나는 메소드를 호출하는 표현식의 값으로 속성을 채우고 해당 메소드에서 반환 된 객체의 속성을 채우려고합니다.
다음을 시도했습니다 (이름이 변경되었습니다).
<property name="NullableIntProperty"
expression="#{Some.Object.Id}.Get().NullableIntValue"/>
어디 Some.Object.Id
다음과 같은 구성 파일로 정의한 다른 객체에 대한 참조입니다.
<object id="Some.Object.Id" ... >
하지만 내 앱은 구문 분석 예외로 시작하지 않습니다. expecting "COLON", found '}'
. 네임 스페이스를 기대하고 있다고 생각하지만 이것에 대한 문서를 찾지 못했습니다.
나는 몇 가지 시도를 시도했지만 어디에서나 막 다른 곳을 때렸습니다. 나는 원래의 조합을 시도했다 MethodInvokingFactoryObject
그리고 PropertyRetrievingFactoryObject
우리는 다른 장소에서 nullable 유형을 위해 사용하지만 실제로는 널 보관소에 실패합니다. null
봄은 물체 공장이 돌아 오는 것을 본 이후로 null
실패로 (일반적으로).
해결책
당신은 사용할 수 있습니다 @(object-id-here)
표현 구문 표현식을 사용하여 스프링 컨텍스트에서 개체 검색:
<property name="NullableIntProperty"
expression="@(Some.Object.Id).PropertyOnSomeObject"/>
다른 팁
#을 $로 변경하면 문제가 해결해야합니다.
제휴하지 않습니다 StackOverflow