Dear Konakart team,
RandomReviewTile.jsp page is not showing the utf char correctly
The method revMgr.truncateDesc does not return utf char.
<%=revMgr.truncateDesc(rev.getReviewText(),15,60)%>
see the attached images
konakart_review_tile_1.jpg is taken with out using the method revMgr.truncateDesc <%=rev.getReviewText()%>
but the second image which is not correct
konakart_review_tile_2.jpg is taken using the method revMgr.truncateDesc <%=revMgr.truncateDesc(rev.getReviewText(),15,60)%>
regards
Quote from: sony3002 on September 05, 2009, 06:32:50 pm
Dear Konakart team,
RandomReviewTile.jsp page is not showing the utf char correctly
The method revMgr.truncateDesc does not return utf char.
<%=revMgr.truncateDesc(rev.getReviewText(),15,60)%>
see the attached images
konakart_review_tile_1.jpg is taken with out using the method revMgr.truncateDesc <%=rev.getReviewText()%>
but the second image which is not correct
konakart_review_tile_2.jpg is taken using the method revMgr.truncateDesc <%=revMgr.truncateDesc(rev.getReviewText(),15,60)%>
regards
hello,
this happens because u r inserting
-<br>
inside the review text. how can i remove it ??? from RandomReviewTile.jsp ?? which method i have to call for not to insert
-<br>
between review text ??
regards
Why don't you just truncate the text in the JSP using a bit of Java code instead of calling our method?
Still, i too think that this is a problem. Some code in the review system truncates or modifies the inserted characters.
This is how the Greek letters are displayed in KonakartAdmin-->Products-->Edit-->Reviews-->Edit in the Text Area:
αβγδεζηθικλμνξοπρστυφχψω
άέίόύϊΐ
Text is inserted as "αβγδεζη...." and internally converted into "αβγδεζη...", but not all characters can be converted back.
While the Product Description i.e. shows all the characters normally everywhere.
The problem is that org.apache.commons.lang.StringEscapeUtils.escapeHTML isn't just escaping the HTML control characters but all of the UTF-8 stuff as well. A workaround is as follows:
In WriteReviewSubmitAction.java comment out the line:
kkAppEng.getReviewMgr().writeReview(wrf.getReviewText(), wrf.getRating(), custId);
And replace it with:
ReviewIf rev = new Review();
rev.setRating(wrf.getRating());
rev.setReviewText(wrf.getReviewText());
rev.setProductId(kkAppEng.getProductMgr().getSelectedProduct().getId());
rev.setLanguageId(kkAppEng.getLangId());
rev.setCustomerId(custId);
kkAppEng.getEng().writeReview(kkAppEng.getSessionId(), rev);
By calling the server engine directly, you miss out the escaping. However, beware that you should still include some HTML escaping because otherwise review text could damage the formatting of the storefront page.