/** * Repairs the given HTML input by adding potentially missing closing tags.<p> * * @param input the HTML input * * @return the repaired HTML or an empty string in case of errors */ public static String repairHtml(String input) { CmsHtmlConverter converter = new CmsHtmlConverter(); String result = converter.convertToStringSilent(input); return result == null ? "" : result; }
/** * Converts the given HTML code according to the settings of this converter.<p> * * @param htmlInput HTML input stored in an array of bytes * @return array of bytes containing the converted HTML * * @throws UnsupportedEncodingException if the encoding set for the conversion is not supported */ public byte[] convertToByte(byte[] htmlInput) throws UnsupportedEncodingException { return convertToByte(new String(htmlInput, getEncoding())); }
/** * Converts the given HTML code according to the settings of this converter.<p> * * @param htmlInput HTML input stored in a string * @return array of bytes containing the converted HTML * * @throws UnsupportedEncodingException if the encoding set for the conversion is not supported */ public byte[] convertToByte(String htmlInput) throws UnsupportedEncodingException { return convertToString(htmlInput).getBytes(getEncoding()); }
if (CmsHtmlConverter.isConversionEnabled(contentConversion)) { CmsHtmlConverter converter = new CmsHtmlConverter(encoding, contentConversion); finalValue = converter.convertToStringSilent(finalValue); finalValue = fixNullCharacters(finalValue);
/** * @see org.opencms.workplace.editors.CmsSimplePageEditor#prepareContent(boolean) */ protected String prepareContent(boolean save) { if (save) { String conversionSetting = CmsHtmlConverter.getConversionSettings(getCms(), m_file); if (CmsStringUtil.isEmptyOrWhitespaceOnly(conversionSetting)) { // by default we want to pretty-print and Xhtml format when saving the content in FCKeditor String content = getParamContent(); CmsHtmlConverter converter = new CmsHtmlConverter(getEncoding(), CmsHtmlConverter.PARAM_XHTML); content = converter.convertToStringSilent(content); setParamContent(content); } } // do further processing with super class return super.prepareContent(true); } }
/** * Internally tidies with cleanup and XHTML.<p> * * @param content HTML to clean * * @return the tidy HTML */ private String tidy(final String content) { CmsHtmlConverter converter = new CmsHtmlConverter(CmsEncoder.ENCODING_UTF_8, new StringBuffer( CmsHtmlConverter.PARAM_WORD).append(";").append(CmsHtmlConverter.PARAM_XHTML).toString()); String result = content; try { result = converter.convertToString(content); } catch (UnsupportedEncodingException e) { // should never happen if (LOG.isWarnEnabled()) { LOG.warn(Messages.get().getBundle().key(Messages.LOG_WARN_TIDY_FAILURE_0), e); } } return result; } }
String contentConversion = CmsHtmlConverter.getConversionSettings(cms, resource); xmlPage.setConversion(contentConversion);
for (Iterator i = getModes().iterator(); i.hasNext();) { String mode = (String)i.next(); String converterClass = OpenCms.getResourceManager().getHtmlConverter(mode); I_CmsHtmlConverter converter = (I_CmsHtmlConverter)Class.forName(className).newInstance(); converter.init(getEncoding(), modes);
/** * Constructor, creates a new CmsHtmlConverter.<p> * * The encoding used by default is {@link CmsEncoder#ENCODING_UTF_8}.<p> */ public CmsHtmlConverter() { init(CmsEncoder.ENCODING_UTF_8, PARAM_ENABLED); }
/** * Returns the conversion modes to use as List of String parameters.<p> * * @return the conversion modes to use as List of String parameters */ private List<String> getModes() { List<String> modes = new ArrayList<String>(); try { modes = CmsStringUtil.splitAsList(getMode(), SEPARATOR_MODES, true); } catch (Exception e) { // error generating list, an empty list will be returned } return modes; }
/** * Converts the given HTML code according to the settings of this converter.<p> * * If an any error occurs during the conversion process, the original input is returned unmodified.<p> * * @param htmlInput HTML input stored in string * * @return string containing the converted HTML */ public String convertToStringSilent(String htmlInput) { try { return convertToString(htmlInput); } catch (Exception e) { if (LOG.isWarnEnabled()) { LOG.warn(Messages.get().getBundle().key(Messages.LOG_CONVERSION_BYTE_FAILED_0), e); } return htmlInput; } }
/** * Converts the given HTML code according to the settings of this converter.<p> * * If an any error occurs during the conversion process, the original input is returned unmodified.<p> * * @param htmlInput HTML input stored in an array of bytes * @return array of bytes containing the converted HTML */ public byte[] convertToByteSilent(byte[] htmlInput) { try { return convertToByte(htmlInput); } catch (Exception e) { if (LOG.isWarnEnabled()) { LOG.warn(Messages.get().getBundle().key(Messages.LOG_CONVERSION_BYTE_FAILED_0), e); } return htmlInput; } }
if (CmsHtmlConverter.isConversionEnabled(contentConversion)) { CmsHtmlConverter converter = new CmsHtmlConverter(encoding, contentConversion); finalValue = converter.convertToStringSilent(finalValue);
/** * Internally tidies with cleanup and XHTML.<p> * * @param content HTML to clean * * @return the tidy HTML */ private String tidy(final String content) { CmsHtmlConverter converter = new CmsHtmlConverter( CmsEncoder.ENCODING_UTF_8, new StringBuffer(CmsHtmlConverter.PARAM_WORD).append(";").append(CmsHtmlConverter.PARAM_XHTML).toString()); String result = content; try { result = converter.convertToString(content); } catch (UnsupportedEncodingException e) { // should never happen if (LOG.isWarnEnabled()) { LOG.warn(Messages.get().getBundle().key(Messages.LOG_WARN_TIDY_FAILURE_0), e); } } return result; } }
String contentConversion = CmsHtmlConverter.getConversionSettings(cms, resource); xmlPage.setConversion(contentConversion);
for (Iterator<String> i = getModes().iterator(); i.hasNext();) { String mode = i.next(); String converterClass = OpenCms.getResourceManager().getHtmlConverter(mode); I_CmsHtmlConverter converter = (I_CmsHtmlConverter)Class.forName(className).newInstance(); converter.init(getEncoding(), modes);
/** * Constructor, creates a new CmsHtmlConverter.<p> * * The encoding used by default is {@link CmsEncoder#ENCODING_UTF_8}.<p> */ public CmsHtmlConverter() { init(CmsEncoder.ENCODING_UTF_8, PARAM_ENABLED); }
/** * Returns the conversion modes to use as List of String parameters.<p> * * @return the conversion modes to use as List of String parameters */ private List getModes() { List modes = new ArrayList(); try { modes = CmsStringUtil.splitAsList(getMode(), SEPARATOR_MODES, true); } catch (Exception e) { // error generating list, an empty list will be returned } return modes; }
/** * Converts the given HTML code according to the settings of this converter.<p> * * If an any error occurs during the conversion process, the original input is returned unmodified.<p> * * @param htmlInput HTML input stored in string * * @return string containing the converted HTML */ public String convertToStringSilent(String htmlInput) { try { return convertToString(htmlInput); } catch (Exception e) { if (LOG.isWarnEnabled()) { LOG.warn(Messages.get().getBundle().key(Messages.LOG_CONVERSION_BYTE_FAILED_0), e); } return htmlInput; } }
/** * Converts the given HTML code according to the settings of this converter.<p> * * If an any error occurs during the conversion process, the original input is returned unmodified.<p> * * @param htmlInput HTML input stored in an array of bytes * @return array of bytes containing the converted HTML */ public byte[] convertToByteSilent(byte[] htmlInput) { try { return convertToByte(htmlInput); } catch (Exception e) { if (LOG.isWarnEnabled()) { LOG.warn(Messages.get().getBundle().key(Messages.LOG_CONVERSION_BYTE_FAILED_0), e); } return htmlInput; } }