Example usage for org.apache.commons.lang3 StringEscapeUtils escapeHtml4

List of usage examples for org.apache.commons.lang3 StringEscapeUtils escapeHtml4

Introduction

In this page you can find the example usage for org.apache.commons.lang3 StringEscapeUtils escapeHtml4.

Prototype

public static final String escapeHtml4(final String input) 

Source Link

Document

Escapes the characters in a String using HTML entities.

For example:

"bread" & "butter"

becomes:

"bread" & "butter".

Usage

From source file:kreidos.diamond.web.view.WebPageTemplate.java

public void generateHeader() throws Exception {
    HttpSession session = request.getSession();
    User loggedInUser = null;//  w  w  w  .  ja  v  a  2s  .  co  m
    generateHead();
    out.println("<div id=\"wrap\">");
    if (session.getAttribute(HTTPConstants.SESSION_KRYSTAL) == null) {
        out.println(
                "<div class=\"navbar navbar-default navbar-inverse navbar-fixed-top\" role=\"navigation\">");
        out.println("<div class=\"container-fluid\">");
        out.println("<div class=\"navbar-header\">");
        out.println(
                "<a class=\"navbar-brand\"><img src=\"/images/diamond.png\" width=\"32\" height=\"32\" align=\"left\">&nbsp;&nbsp;"
                        + ServerConstants.SERVER_NAME + "</a>");
        out.println("</div>");
        out.println("</div>");
        out.println("</div>");
    } else {
        out.println(
                "<div class=\"navbar navbar-default navbar-inverse navbar-fixed-top\" role=\"navigation\">");
        out.println("<div class=\"container-fluid\">");
        out.println("<div class=\"navbar-header\">");
        out.println(
                "<button type=\"button\" class=\"navbar-toggle\" data-toggle=\"collapse\" data-target=\".navbar-collapse\">");
        out.println("<span class=\"sr-only\">Toggle navigation</span>");
        out.println("<span class=\"icon-bar\"></span>");
        out.println("<span class=\"icon-bar\"></span>");
        out.println("<span class=\"icon-bar\"></span>");
        out.println("</button>");
        out.println(
                "<a class=\"navbar-brand\"><img src=\"/images/diamond.png\" width=\"32\" height=\"32\" align=\"left\"/></a>");
        out.println("</div>");

        loggedInUser = (User) session.getAttribute(HTTPConstants.SESSION_KRYSTAL);

        out.println("<div class=\"navbar-collapse collapse\">");
        out.println("<ul class=\"nav navbar-nav\">");
        String cssClass = "";
        if (request.getServletPath().startsWith("/console")) {
            cssClass = "active";
        }
        out.println("<li class=\"" + cssClass + "\">");
        out.println(
                "<a href=\"/console\" title=\"My Workspace\"><i class=\"fa fa-lg fa-home\"></i>  My Workspace</a>");
        out.println("</li>");

        cssClass = "";

        if (loggedInUser.isAdmin()) {
            if (request.getServletPath().startsWith("/cpanel")) {
                cssClass = "active";
            }
            out.println("<li class=\"" + cssClass + "\">");
            out.println(
                    "<a href=\"/cpanel\"  title=\"Control Panel\"><i class=\"fa fa-lg fa-cogs\"></i>  Control Panel</a>");
            out.println("</li>");
        }
        out.println("</ul>");

        out.println("<ul class=\"nav navbar-nav navbar-right\">");
        out.println("<li>");
        out.println(
                "<a href=\"/console/newdocument\" id=\"adddocument\"><i class=\"fa fa-cloud-upload fa-lg\"></i> Add Document</a>");
        out.println("</li>");

        out.println("<li class=\"dropdown\">");
        out.println(
                "<a href=\"#\" class=\"dropdown-toggle\" data-toggle=\"dropdown\"><i class=\"fa fa-user fa-lg\" title=\"My Profile\"></i> <b class=\"caret\"></b></a>");
        out.println("<ul class=\"dropdown-menu\" role=\"menu\">");
        out.println("<li><a href=\"/console/myprofile\"><i class=\"fa fa-cog\"></i> My Profile</a></li>");
        out.println("<li class=\"divider\"></li>");
        out.println(
                "<li><a href=\"/logout\" class=\"confirm\" title=\"Are you sure you want to logout?\"><i class=\"fa fa-sign-out\"></i> Logout</a></li>");
        out.println("</ul>");
        out.println("</li>");

        out.println("<li class=\"dropdown\">");
        out.println(
                "<a href=\"#\" class=\"dropdown-toggle\" data-toggle=\"dropdown\"><i class=\"fa fa-lg fa-question-circle fa-fw\"></i><b class=\"caret\"></b></a>");
        out.println("<ul class=\"dropdown-menu\" role=\"menu\">");
        out.println(
                "<li><a href=\"http://www.krystaldms.in/resources/documentation/community/2015/user\" target=\"_new\"><i class=\"fa fa-book\"></i> Users Guide</a></li>");
        out.println(
                "<li><a href=\"http://www.krystaldms.in/resources/documentation/community/2015/admin\"  target=\"_new\" ><i class=\"fa fa-book\"></i> Administrators Guide</a></li>");
        out.println("</ul>");
        out.println("</li>");

        out.println("</ul>");

        out.println(
                "<form class=\"navbar-form\" role=\"form\" action=\"/console/search\" accept-charset=\"utf-8\" method=\"post\">");
        out.println("<div class=\"input-group\" style=\"padding:0px 10px;\">");
        String searchText = request.getParameter("txtSearch") != null ? request.getParameter("txtSearch") : "";
        out.println(
                "<input type=\"text\" name=\"txtSearch\" id=\"txtSearch\" placeholder=\"Search Documents\" class=\"form-control required\" minlength=\"1\" value=\""
                        + StringEscapeUtils.escapeHtml4(searchText) + "\">");
        out.println("<span class=\"input-group-btn\">");
        out.println(
                "<button type=\"submit\" class=\"btn btn-default\"><i class=\"fa fa-lg fa-search\"></i></button>");
        out.println("</span>");
        out.println("</div>");
        out.println("</form>");

        out.println("</div>");
        out.println("</div>");
        out.println("</div>");
    }
    out.println("<div class=\"container-fluid\">");
}

From source file:com.day.cq.wcm.foundation.forms.LayoutHelper.java

/**
 * Print all errors (if there are any.) If there are error messages for this
 * field, a div for each error message is created. The div has the class
 * form_row, then {@link #printTitle(String, String, boolean, Writer)} is
 * called and a third inner div with the message and the classes
 * form_rightcol and form_error is created.
 *
 * @param request   The current request.
 * @param fieldName The name of the field (not the id!)
 * @param hideLabel Option to completely hide the label (removes form_leftcollabel and form_leftcolmark
 * divs content)/* ww  w.j a va2  s  .  c o  m*/
 * @param out       The writer.
 * @return Returns <code>true</code> if an error has been printed (since 5.5)
 * @throws IOException If writing fails.
 * @since 5.4
 */
public static boolean printErrors(SlingHttpServletRequest request, String fieldName, boolean hideLabel,
        Writer out, final int valueIndex) throws IOException {
    final ValidationInfo info = ValidationInfo.getValidationInfo(request);
    // check if we have validation errors
    if (info != null) {
        String[] msgs = info.getErrorMessages(fieldName, valueIndex);
        if (msgs != null) {
            for (String msg : msgs) {
                out.write("<div class=\"form_row\">");
                printTitle(null, null, false, hideLabel, out);
                out.write("<div class=\"form_rightcol form_error\">");
                String[] msgParas = msg.split("\n");
                for (int i = 0; i < msgParas.length; i++) {
                    out.write(StringEscapeUtils.escapeHtml4(msgParas[i]));
                    if (i + 1 < msgParas.length) {
                        out.write("<br>");
                    }
                }
                out.write("</div>");
                out.write("</div>");
            }
            return true;
        }
    }
    return false;
}

From source file:kreidos.diamond.web.view.console.SearchView.java

@SuppressWarnings("unchecked")
private void printDocumentNotes() {
    ArrayList<DocumentNote> documentNotes = (ArrayList<DocumentNote>) request.getAttribute("NOTELIST");
    if (documentNotes.size() > 0) {
        out.println("<div class=\"panel panel-default\">");
        out.println("<div class=\"panel-heading\">");
        out.println("<div class=\"row\">");
        out.println("<div class=\"col-xs-8\">");
        out.println("<h4><i class=\"fa fa-comments fa-lg\"></i> Document Notes</h4>");
        out.println("</div>");
        out.println("<div class=\"col-xs-4 text-right\">");
        out.println("<h4>" + documentNotes.size() + " Document Notes</h4>");
        out.println("</div>");
        out.println("</div>");//row
        out.println("</div>");//panel-heading
        out.println("<ul class=\"list-group\">");
        for (DocumentNote note : documentNotes) {
            String cssClass = "";
            if ("P".equalsIgnoreCase(note.getNoteType())) {
                cssClass = "text-success";
            }//from   w w w  . j  a v  a 2  s .co  m
            out.println("<li class=\"list-group-item " + cssClass + "\">");
            out.println("<h4>" + StringEscapeUtils.escapeHtml4(note.getNoteData()) + "</h4>");
            out.println("<h5>" + StringEscapeUtils.escapeHtml4(note.getUserName()) + "</h5>");
            out.println("<p>" + StringHelper.getFriendlyDateTime(note.getCreated()) + "</p>");
            out.println("<p><a href=\"" + HTTPConstants.BASEURL + "/console/viewdocument?documentid="
                    + note.getDocumentId() + "\" title=\"View Document\">View Document</a></p>");
            out.println("</li>");
        }
        out.println("</ul>");
        out.println("</div>");//panel
    }
}

From source file:com.sonicle.webtop.mail.ICalendarRequest.java

public String getHtmlView(Locale locale, String serviceVersion, String laf, ResourceBundle bundle) {
    String htmlmsg = "";
    if (method.equals("REQUEST")) {
        htmlmsg = MessageFormat.format(bundle.getString("tpl.ical.msg.invited"),
                StringEscapeUtils.escapeHtml4(organizerCN));
    } else if (method.equals("REPLY")) {
        Parameter param = icalAttendees[0].getParameter("PARTSTAT");
        String v = param.getValue();
        if (v.equals("ACCEPTED"))
            htmlmsg = MessageFormat.format(bundle.getString("tpl.ical.msg.accepted"),
                    StringEscapeUtils.escapeHtml4(attendeesCN[0]));
        else if (v.equals("DECLINED"))
            htmlmsg = MessageFormat.format(bundle.getString("tpl.ical.msg.declined"),
                    StringEscapeUtils.escapeHtml4(attendeesCN[0]));
        else/*from  ww w .j  a  v a2  s.c  o  m*/
            htmlmsg = MessageFormat.format(bundle.getString("tpl.ical.msg.answered"),
                    StringEscapeUtils.escapeHtml4(attendeesCN[0]));

    } else if (method.equals("CANCEL")) {
        htmlmsg = MessageFormat.format(bundle.getString("tpl.ical.msg.canceled"),
                StringEscapeUtils.escapeHtml4(organizerCN));
    }

    String htmlorganizer = "<span class='" + getParstatClassName(icalOrganizer) + "'></span>&nbsp;"
            + StringEscapeUtils.escapeHtml4(organizer);
    StringBuilder htmlattendees = new StringBuilder();
    if (attendees != null) {
        for (int i = 0; i < attendees.length; ++i) {
            String s = attendees[i];
            Attendee a = icalAttendees[i];
            htmlattendees.append("<span class='" + getParstatClassName(a) + "'></span>&nbsp;");
            htmlattendees.append(s);
            htmlattendees.append("<br>");
        }
    }
    return String.format(locale,
            "<html><head><meta content='text/html; charset=utf-8' http-equiv='Content-Type'>"
                    + "<link rel=\"stylesheet\" type=\"text/css\" href=\"resources/com.sonicle.webtop.mail/"
                    + serviceVersion + "/laf/" + laf + "/service.css\" />" + "</head><body>" +

                    "<table border=0 cellpadding=4 class=wtmail-ical-tabletitle>"
                    + "<tr><td class=wtmail-ical-title>%s</td></tr>" + "</table>" +

                    "<table border=0 cellpadding=4 class=wtmail-ical-tabledata>"
                    + "<tr><td class=wtmail-ical-label>%s</td><td class=wtmail-ical-data>%s</td></tr>"
                    + "<tr><td class=wtmail-ical-label>%s</td><td class=wtmail-ical-data>%s</td></tr>" +
                    //"<tr><td class=wtmail-ical-label>Quando:</td><td>"+sDtStart+"</td></tr>"+
                    "<tr><td class=wtmail-ical-label>%s</td><td class=wtmail-ical-data>%s</td></tr>"
                    + "<tr><td class=wtmail-ical-label>%s</td><td class=wtmail-ical-data>%s</td></tr>" +
                    //         "<tr><td class=wtmail-ical-label>Durata:</td><td class=wtmail-ical-data>%s</td></tr>"+
                    "<tr><td class=wtmail-ical-label>%s</td><td class=wtmail-ical-data>%s</td></tr>"
                    + "<tr><td class=wtmail-ical-label>%s</td><td class=wtmail-ical-data>%s</td></tr>"
                    + "<tr><td class=wtmail-ical-label>%s</td><td class=wtmail-ical-data>%s</td></tr>" +

                    "</table>" + "</body></html>",
            htmlmsg, StringEscapeUtils.escapeHtml4(bundle.getString("tpl.ical.event.summary")),
            StringEscapeUtils.escapeHtml4(summary),
            StringEscapeUtils.escapeHtml4(bundle.getString("tpl.ical.event.location")),
            StringEscapeUtils.escapeHtml4(location),
            StringEscapeUtils.escapeHtml4(bundle.getString("tpl.ical.event.start")),
            StringEscapeUtils.escapeHtml4(String.format(locale, "%tc", dateStart)),
            StringEscapeUtils.escapeHtml4(bundle.getString("tpl.ical.event.end")),
            StringEscapeUtils.escapeHtml4(String.format(locale, "%tc", dateEnd)),
            //            htmlduration,
            StringEscapeUtils.escapeHtml4(bundle.getString("tpl.ical.event.organizer")), htmlorganizer,
            StringEscapeUtils.escapeHtml4(bundle.getString("tpl.ical.event.description")),
            hyperlinkText(StringEscapeUtils.escapeHtml4(description), "_new"),
            StringEscapeUtils.escapeHtml4(bundle.getString("tpl.ical.event.attendees")), htmlattendees);
}

From source file:com.primeleaf.krystal.web.view.console.SearchView.java

@SuppressWarnings("unchecked")
private void printDocumentNotes() {
    ArrayList<DocumentNote> documentNotes = (ArrayList<DocumentNote>) request.getAttribute("NOTELIST");
    if (documentNotes.size() > 0) {
        out.println("<div class=\"panel panel-default\">");
        out.println("<div class=\"panel-heading\">");
        out.println("<div class=\"row\">");
        out.println("<div class=\"col-xs-8\">");
        out.println("<h4><i class=\"fa fa-comments fa-lg\"></i> Document Notes</h4>");
        out.println("</div>");
        out.println("<div class=\"col-xs-4 text-right\">");
        out.println("<h4>" + documentNotes.size() + " Document Notes</h4>");
        out.println("</div>");
        out.println("</div>");//row
        out.println("</div>");//panel-heading
        out.println("<ul class=\"list-group\">");
        for (DocumentNote note : documentNotes) {
            String cssClass = "";
            if ("P".equalsIgnoreCase(note.getNoteType())) {
                cssClass = "text-success";
            }/*w w  w.j a  v a2  s . c  o m*/
            out.println("<li class=\"list-group-item " + cssClass + "\">");
            out.println("<h4>" + StringEscapeUtils.escapeHtml4(note.getNoteData()) + "</h4>");
            out.println("<h5>" + StringEscapeUtils.escapeHtml4(note.getUserName()) + "</h5>");
            out.println("<p>" + StringHelper.getFriendlyDateTime(note.getCreated()) + "</p>");
            if (note.getUserName().equalsIgnoreCase(loggedInUser.getUserName())) {
                out.println("<p><a href=\"" + HTTPConstants.BASEURL + "/console/viewdocument?documentid="
                        + note.getDocumentId() + "\" title=\"View Document\">View Document</a></p>");
            }
            out.println("</li>");
        }
        out.println("</ul>");
        out.println("</div>");//panel
    }
}

From source file:com.primeleaf.krystal.web.view.WebPageTemplate.java

public void generateHeader() throws Exception {
    HttpSession session = request.getSession();
    User loggedInUser = null;//from  w w  w.  j a va 2 s .  com
    generateHead();
    out.println("<div id=\"wrap\">");
    String productHomePageURL = "http://www.krystaldms.in/community";
    if (session.getAttribute(HTTPConstants.SESSION_KRYSTAL) == null) {
        out.println(
                "<div class=\"navbar navbar-default navbar-inverse navbar-fixed-top\" role=\"navigation\">");
        out.println("<div class=\"container-fluid\">");
        out.println("<div class=\"navbar-header\">");
        out.println("<a class=\"navbar-brand\" href=\"" + productHomePageURL
                + "\" target=\"_new\"><img src=\"/images/krystal.png\" width=\"32\" height=\"32\" align=\"left\"/>&nbsp;KRYSTAL DMS</a>");
        out.println("</div>");
        out.println("</div>");
        out.println("</div>");
    } else {
        out.println(
                "<div class=\"navbar navbar-default navbar-inverse navbar-fixed-top\" role=\"navigation\">");
        out.println("<div class=\"container-fluid\">");
        out.println("<div class=\"navbar-header\">");
        out.println(
                "<button type=\"button\" class=\"navbar-toggle\" data-toggle=\"collapse\" data-target=\".navbar-collapse\">");
        out.println("<span class=\"sr-only\">Toggle navigation</span>");
        out.println("<span class=\"icon-bar\"></span>");
        out.println("<span class=\"icon-bar\"></span>");
        out.println("<span class=\"icon-bar\"></span>");
        out.println("</button>");
        out.println("<a class=\"navbar-brand\" href=\"" + productHomePageURL
                + "\" target=\"_new\"><img src=\"/images/krystal.png\" width=\"28\" height=\"28\" align=\"left\"/>&nbsp;KRYSTAL DMS</a>");
        out.println("</div>");

        loggedInUser = (User) session.getAttribute(HTTPConstants.SESSION_KRYSTAL);

        out.println("<div class=\"navbar-collapse collapse\">");
        out.println("<ul class=\"nav navbar-nav\">");
        String cssClass = "";
        if (request.getServletPath().startsWith("/console")) {
            cssClass = "active";
        }
        out.println("<li class=\"" + cssClass + "\">");
        out.println(
                "<a href=\"/console\" title=\"My Workspace\"><i class=\"fa fa-lg fa-home\"></i>  My Workspace</a>");
        out.println("</li>");

        cssClass = "";

        if (loggedInUser.isAdmin()) {
            if (request.getServletPath().startsWith("/cpanel")) {
                cssClass = "active";
            }
            out.println("<li class=\"" + cssClass + "\">");
            out.println(
                    "<a href=\"/cpanel\"  title=\"Control Panel\"><i class=\"fa fa-lg fa-cogs\"></i>  Control Panel</a>");
            out.println("</li>");
        }
        out.println("</ul>");

        out.println("<ul class=\"nav navbar-nav navbar-right\">");
        out.println("<li>");
        out.println(
                "<a href=\"/console/newdocument\" id=\"adddocument\"><i class=\"fa fa-cloud-upload fa-lg\"></i> Add Document</a>");
        out.println("</li>");

        out.println("<li class=\"dropdown\">");
        out.println(
                "<a href=\"#\" class=\"dropdown-toggle\" data-toggle=\"dropdown\"><i class=\"fa fa-user fa-lg\" title=\"My Profile\"></i> <b class=\"caret\"></b></a>");
        out.println("<ul class=\"dropdown-menu\" role=\"menu\">");
        out.println("<li><a href=\"/console/myprofile\"><i class=\"fa fa-cog\"></i> My Profile</a></li>");
        out.println("<li class=\"divider\"></li>");
        out.println(
                "<li><a href=\"/logout\" class=\"confirm\" title=\"Are you sure you want to logout?\"><i class=\"fa fa-sign-out\"></i> Logout</a></li>");
        out.println("</ul>");
        out.println("</li>");

        out.println("<li class=\"dropdown\">");
        out.println(
                "<a href=\"#\" class=\"dropdown-toggle\" data-toggle=\"dropdown\"><i class=\"fa fa-lg fa-question-circle fa-fw\"></i><b class=\"caret\"></b></a>");
        out.println("<ul class=\"dropdown-menu\" role=\"menu\">");
        out.println(
                "<li><a href=\"http://www.krystaldms.in/resoruces/documentation/community/2015/user\" target=\"_new\"><i class=\"fa fa-book\"></i> Users Guide</a></li>");
        out.println(
                "<li><a href=\"http://www.krystaldms.in/resoruces/documentation/community/2015/admin\"  target=\"_new\" ><i class=\"fa fa-book\"></i> Administrators Guide</a></li>");
        out.println("</ul>");
        out.println("</li>");

        out.println("</ul>");

        out.println(
                "<form class=\"navbar-form\" role=\"form\" action=\"/console/search\" accept-charset=\"utf-8\" method=\"post\">");
        out.println("<div class=\"input-group\" style=\"padding:0px 10px;\">");
        String searchText = request.getParameter("txtSearch") != null ? request.getParameter("txtSearch") : "";
        out.println(
                "<input type=\"text\" name=\"txtSearch\" id=\"txtSearch\" placeholder=\"Search Documents\" class=\"form-control required\" minlength=\"1\" value=\""
                        + StringEscapeUtils.escapeHtml4(searchText) + "\">");
        out.println("<span class=\"input-group-btn\">");
        out.println(
                "<button type=\"submit\" class=\"btn btn-default\"><i class=\"fa fa-lg fa-search\"></i></button>");
        out.println("</span>");
        out.println("</div>");
        out.println("</form>");

        out.println("</div>");
        out.println("</div>");
        out.println("</div>");
    }
    out.println("<div class=\"container-fluid\">");
}

From source file:com.github.naoghuman.cm.model.subcategory.SubCategoryModel.java

@Override
public void writeExternal(ObjectOutput out) throws IOException {
    out.writeLong(this.getId());
    out.writeLong(this.getMatrixId());
    out.writeLong(this.getCategoryId());
    out.writeLong(this.getGenerationTime());
    out.writeObject(StringEscapeUtils.escapeHtml4(this.getTitle()));
    out.writeObject(StringEscapeUtils.escapeHtml4(this.getDescription()));
}

From source file:com.primeleaf.krystal.web.view.WebView.java

public void generatePagination(String url) {
    int totalSize = (Integer) request.getAttribute("TOTALHITS");
    int currentPage = (Integer) request.getAttribute("PAGE");
    int pageSize = loggedInUser.getHitlistSize();
    int totalPages = (int) Math.ceil((double) totalSize / (double) pageSize);

    Enumeration<String> enumRequest = request.getParameterNames(); // get all the requested parameters
    StringBuffer queryString = new StringBuffer(url);
    queryString.append("?");
    while (enumRequest.hasMoreElements()) {
        String parameterName = (String) enumRequest.nextElement();
        if (parameterName.equalsIgnoreCase("page")) {
            continue;
        }/*from w  w w .j  ava 2  s  .c  o m*/
        String parameterValue = request.getParameter(parameterName);
        queryString.append("&");
        queryString.append(parameterName);
        queryString.append("=");
        queryString.append(parameterValue);
    }

    if (totalPages > 1) {
        out.println("<div class=\"text-center\">");
        out.println("<ul class=\"pagination\">");

        int startPage = 1;
        int endPage = 0;

        if (currentPage > 10) {
            startPage = currentPage - 10;
        }
        endPage = currentPage + 9; //end page will be current page plus 10

        if (endPage > totalPages) { //if end page becomes more than total pages then end page should be total pages
            endPage = totalPages;
        }

        if (currentPage == 1) {
            out.println("<li class=\"disabled\"><a href=\"javascript:void(0);\">&laquo;</a></li>");
        } else {
            out.println("<li><a href=\"" + StringEscapeUtils.escapeHtml4(queryString.toString()) + "&page="
                    + (currentPage - 1) + "\">&laquo;</a></li>");
        }
        for (int i = startPage; i <= endPage; i++) {
            if (i == currentPage) {
                out.println("<li>");
            } else {
                out.println("<li class=\"active\">");
            }
            out.println("<a href=\"" + StringEscapeUtils.escapeHtml4(queryString.toString()) + "&page=" + i
                    + "\">");
            out.println(i);
            out.println("</a>");
            out.println("</li>");
        }
        if (currentPage == totalPages) {
            out.println("<li class=\"disabled\"><a href=\"javascript:void(0);\">&raquo;</a></li>");
        } else {
            out.println("<li><a href=\"" + StringEscapeUtils.escapeHtml4(queryString.toString()) + "&page="
                    + (currentPage + 1) + "\">&raquo;</a></li>");
        }
        out.println("</ul>");
        out.println("</div>");
    }
}

From source file:de.blizzy.documentr.search.PageFinder.java

private SearchTextSuggestion getSearchTextSuggestion(String searchText, Authentication authentication,
        IndexSearcher searcher) throws IOException, ParseException, TimeoutException {

    List<WordPosition> words = Lists.newArrayList();

    TokenStream tokenStream = null;/*  ww w  .j a v  a  2  s . c  o m*/
    try {
        tokenStream = analyzer.tokenStream(PageIndex.ALL_TEXT_SUGGESTIONS, new StringReader(searchText));
        tokenStream.addAttribute(CharTermAttribute.class);
        tokenStream.addAttribute(OffsetAttribute.class);
        tokenStream.reset();
        while (tokenStream.incrementToken()) {
            CharTermAttribute charTerm = tokenStream.getAttribute(CharTermAttribute.class);
            String text = charTerm.toString();
            if (StringUtils.isNotBlank(text)) {
                OffsetAttribute offset = tokenStream.getAttribute(OffsetAttribute.class);
                WordPosition word = new WordPosition(text, offset.startOffset(), offset.endOffset());
                words.add(word);
            }
        }
        tokenStream.end();
    } finally {
        Util.closeQuietly(tokenStream);
    }

    Collections.reverse(words);

    StringBuilder suggestedSearchText = new StringBuilder(searchText);
    StringBuilder suggestedSearchTextHtml = new StringBuilder(searchText);
    boolean foundSuggestions = false;
    String now = String.valueOf(System.currentTimeMillis());
    String startMarker = "__SUGGESTION-" + now + "__"; //$NON-NLS-1$ //$NON-NLS-2$
    String endMarker = "__/SUGGESTION-" + now + "__"; //$NON-NLS-1$ //$NON-NLS-2$
    DirectSpellChecker spellChecker = new DirectSpellChecker();
    IndexReader reader = searcher.getIndexReader();
    for (WordPosition word : words) {
        Term term = new Term(PageIndex.ALL_TEXT_SUGGESTIONS, word.getWord());
        SuggestWord[] suggestions = spellChecker.suggestSimilar(term, 1, reader,
                SuggestMode.SUGGEST_MORE_POPULAR);
        if (suggestions.length > 0) {
            String suggestedWord = suggestions[0].string;
            int start = word.getStart();
            int end = word.getEnd();
            suggestedSearchText.replace(start, end, suggestedWord);
            suggestedSearchTextHtml.replace(start, end,
                    startMarker + StringEscapeUtils.escapeHtml4(suggestedWord) + endMarker);

            foundSuggestions = true;
        }
    }

    if (foundSuggestions) {
        String suggestion = suggestedSearchText.toString();
        SearchResult suggestionResult = findPages(suggestion, 1, authentication, searcher);
        int suggestionTotalHits = suggestionResult.getTotalHits();
        if (suggestionTotalHits > 0) {
            String html = StringEscapeUtils.escapeHtml4(suggestedSearchTextHtml.toString())
                    .replaceAll(startMarker + "(.*?)" + endMarker, "<strong><em>$1</em></strong>"); //$NON-NLS-1$ //$NON-NLS-2$
            return new SearchTextSuggestion(suggestedSearchText.toString(), html, suggestionTotalHits);
        }
    }

    return null;
}

From source file:me.vertretungsplan.utils.SubstitutionTextUtils.java

private static String diff(String oldS, String newS) {
    if (hasData(oldS) && hasData(newS)) {
        List<DiffMatchPatch.Diff> diffs = new DiffMatchPatch().diff_main(oldS, newS);
        StringBuilder builder = new StringBuilder();
        for (DiffMatchPatch.Diff diff : diffs) {
            String text = StringEscapeUtils.escapeHtml4(diff.text);
            switch (diff.operation) {
            case INSERT:
                builder.append("<ins>").append(text).append("</ins>");
                break;
            case DELETE:
                builder.append("<del>").append(text).append("</del>");
                break;
            case EQUAL:
                builder.append(text);/*from   ww w  .  j a v a  2  s.c o  m*/
                break;
            }
        }
        return builder.toString();
    } else {
        return commonDiff(oldS, newS);
    }
}