private String getNodeContentAsString(Node node) throws ValueFormatException, PathNotFoundException, IOException, RepositoryException { if (node == null) return null; return IOUtils.toString(node.getNode("jcr:content").getProperty("jcr:data").getBinary().getStream(), configurator.getEncoding()); }
public void removeXSSsecurityVulnerability(String parentFolder, String fileName) throws RepositoryException, Exception { if (!session.isLive()) session = repository.loginAdministrative(null); Node node = session.getRootNode().getNode(parentFolder+"/"+fileName); if (isValidMimeType(node)) { log.info("Removing XSS Vulnerability codes for node {}", node.getPath()); StringWriter sw = new StringWriter(); XMLWriter xmlWriter = new XMLWriter(sw); xmlWriter.setOutputProperty(XMLWriter.OMIT_XML_DECLARATION, "yes"); xmlWriter.setOutputProperty(XMLWriter.ENCODING, configurator.getEncoding()); parser.setContentHandler(xmlWriter); parser.parse(new InputSource(new InputStreamReader(node.getNode("jcr:content").getProperty("jcr:data").getStream(), configurator.getEncoding()))); node.getNode("jcr:content").setProperty("jcr:data", new ByteArrayInputStream(sw.toString().getBytes(configurator.getEncoding()))); } else { log.info("No XSS Vulnerability remove, not a HTML: {} - {}", node.getPath(), node.getNode("jcr:content").getProperty("jcr:mimeType")); } session.save(); }
private InternetAddress[] convertToInternetAddress(Object address) throws AddressException, UnsupportedEncodingException { if (address == null) return new InternetAddress[]{}; if (address instanceof InternetAddress) return new InternetAddress[] {(InternetAddress)address}; else if (address instanceof String) { return new InternetAddress[] {new InternetAddress(MimeUtility.encodeText((String)address, configurator.getEncoding(), "Q"))}; } else if (address instanceof InternetAddress[]) { return (InternetAddress[]) address; } else if (address instanceof List<?>) { return convertToInternetAddress(((List) address).toArray()); } else if (address instanceof Object[]) { List<InternetAddress> list = new ArrayList<InternetAddress>(); for (Object o : (Object[])address) { for (InternetAddress addr : convertToInternetAddress(o)) { list.add(addr); } return list.toArray(new InternetAddress[list.size()]); } } return new InternetAddress[] {new InternetAddress(MimeUtility.encodeText(address.toString(), configurator.getEncoding(), "Q"))}; }
mailNode.setProperty("jcr:data", new BinaryValue(html.getBytes(configurator.getEncoding()))); mailNode.setProperty("jcr:lastModified", Calendar.getInstance()); mailNode.setProperty("jcr:mimeType", "message/rfc822");
mimeMessage.setSubject(MimeUtility.encodeText(subject, configurator.getEncoding(), "Q")); } else { if (node != null && node.hasProperty("subject")) { mimeMessage.setSubject(MimeUtility.encodeText(node.getProperty("subject").getString(), configurator.getEncoding(), "Q")); } else if (variables != null && variables.containsKey("subject")) { mimeMessage.setSubject(MimeUtility.encodeText((String)variables.get("subject"), configurator.getEncoding(), "Q"));
perThreadRequest.set(null); perThreadResponse.set(null); response.setCharacterEncoding(config.getEncoding()); PrintWriter writer = response.getWriter(); writer.print(payload);
plainTextPart.setText(extractTextFromHtml(html), configurator.getEncoding()); messageBody.addBodyPart(plainTextPart); htmlTextPart.setContent(html, "text/html;charset=" + configurator.getEncoding()); // ;charset=UTF-8 messageBody.addBodyPart(htmlTextPart);
+ userName); String passwordDigest = new PasswordDigester(password, configurator.getDigest(), configurator.getEncoding()).toString(); user = userManager.createUser(userName, passwordDigest);