문제

우리는 Resin 서버에 새로운 openemm 설치를 배포했습니다(Resin이 권장되는 기본 응용 프로그램 서버이지만 엄청난 양의 종속성으로 인해 정확히 간단하지는 않았습니다).이것이 우리의 설정입니다:

  • 최신 젠투 GNU/Linux
  • OpenEMM 5.1.1(엄청난 양의 종속 jar를 포함하여 소스에서 컴파일됨)
  • 127.0.0.1:8080의 수지 3.2.1
  • 트래픽을 127.0.0.1:8080으로 전달하는 가속기 모드의 Squid 프런트엔드

이 설정은 잘 작동하는 것 같습니다.OpenEMM의 거의 모든 페이지가 작동합니다.그러나 "작업" 메뉴 항목에서 다음 오류가 발생합니다.

javax.servlet.ServletException: javax.servlet.jsp.JspException: No bean found under attribute key emmaction

오류가 발생하는 다른 메뉴 항목은 "수신자 / 개요" 메뉴 항목입니다.

javax.servlet.ServletException: javax.servlet.jsp.JspException: Missing message for key "gender..short"

나는 Java 배포에 대해 꽤 멍청한 사람입니다.어떤 도움이라도 대단히 감사하겠습니다.

업데이트: 나는 이미 이 문제에 대해 어느 정도 진전을 이루었습니다.이러한 모든 문제는 일부 변수가 보간되었지만 빈 값을 포함하기 때문에 발생하는 것 같습니다. 예를 들어 ${recipient.gender}는 빈 값으로 확인되어 성별..짧은("gender.${recipient.gender}에서 해결됨)을 조회하려고 시도합니다. 짧은").코드 조각은 다음과 같습니다.

<display:column class="name" headerClass="head_name" titleKey="Salutation">
  <bean:message key="gender.${recipient.gender}.short"/>
</display:column>

이는 다음과 같이 "display:table"로 래핑됩니다.

<display:table class="dataTable" pagesize="${recipientForm.numberofRows}"
  id="recipient" name="recipientList" sort="external"
  requestURI="/recipient.do?action=${ACTION_LIST}" excludedParams="*"
  partialList="true" size="${recipientList.fullListSize}"
>

추가 디버깅을 수행할 수 있는 단서가 있습니까?나는 이것이 잘못된 동작을 고칠 것이라는 희망으로 이미 디스플레이태그 라이브러리를 1.2에서 1.1.1로 다운그레이드했습니다. 그러나 그것은 잘못된 점인 것 같았습니다.

도움이 되었습니까?

해결책

결국 저는 Resin을 3.1.x에서 Resin 3.0.x로 다운그레이드하여 이 문제를 해결했습니다...Resin의 일부 라이브러리와 웹앱 지원 코드에 호환되지 않는 변경 사항이 있는 것 같습니다.이것이 무엇인지, 그리고 최신 레진 버전에서 작동하도록 수정하는 방법은 여전히 ​​나에게 미스터리로 남아 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top