2016-11-08 1 views
1

제품이 오프라인 인 경우 사용자가 장바구니 페이지에서 체크 아웃 할 때와 동일한 오류 메시지가 표시됩니다.Hybris : 상점 정면에 오류 메시지 표시

basket.validation.offlineProduct=Unfortunately <a href="{1}">{0}</a> was removed from your cart as it is offline. You previously had {2} in your cart. 

: 나는 다음과 같이 속성 파일에이 오류 속성 "basket.validation.offlineProduct"를 추가

GlobalMessages.addMessage(model, GlobalMessages.ERROR_MESSAGES_HOLDER, "basket.validation.offlineProduct", new Object[] { productData.getName(), productUrl, quantity }); 

: 내가 컨트롤러 클래스의 소스 코드를 업데이트하고 다음과 같이 GlobalMessages에 오류 메시지를 추가 하지만 내 사용자 정의 코드를 디버깅 할 때 오류 메시지가 표시되지 않고 오류 메시지 코드가 모델로 설정됩니다.

오류 메시지를 표시하는 데 필요한

다른 설정은 이미 다음과 같이 JSP 파일에 존재 : 나는 다른 컨트롤러 파일의 소스 코드를 확인하고, 프로세스가 같은 오류 메시지가 표시지고 것 같다

<%@ taglib prefix="common" tagdir="/WEB-INF/tags/desktop/common" %> 
<common:globalMessages/> 

다른 페이지들. 캐시 삭제 및 서버 재시작도 시도했습니다. 내가 당신이라면

+0

같은 아니라 GlobalMessages보다는 다른 사용 무언가를보십시오. 거기에 HTML을 저장하지 마십시오. –

+0

@Hristo .. 비 html 속성도 사용 해봤습니다. 그것은 작동하지 않았다. –

답변

1

나는 다음 일을 해보고 싶었어요 :

1) 예를 들어, 매개 변수없이 메시지를 표시하는 것을 시도하십시오 - "Product was removed from your cart as it is offline". 그것이 작동하는 경우 - 문제는 속성에 있습니다.

2) 강력 등록 정보 파일에 텍스트 만 사용하는 것이 좋습니다 것입니다

String error = l10NService.getLocalizedString("basket.validation.offlineProduct",new Object[] { productData.getName(), productUrl, quantity }); 
model.addAttribute("productError", error); 
+0

나는 실제로이 두 가지 해결책을 이미 시도했다. 하지만 여전히 화면에 오류 메시지가 표시되지 않습니다. 그러나 기본 hybris 오류 메시지가 화면에 나타납니다. 나는 두 가지 해결책 모두 효과가 있다고 생각하지만 그렇지 않다. 내가 이해할 수없는 뭔가가 내 코드에서 잘못되었을 수 있습니다. 감사! –

+0

나는 그것을 얻었다. 글쎄, 내가 생각하는 경우 디버그 그 특성을 모델로 설정되어 있지만 매장 앞 Hybris 보여줍니다 다른 메시지 - 나는 모델을 컨트롤러와 점포에 대한 동일한 있는지 확인해야한다고 생각 (일부 param 추가 및 출력, 예를 들어). – Johnlang

+0

또는 메시지가 어떻게 든 덮어 쓰게됩니다 – Johnlang