anchor.diff:              lastPkg = pkg;
           }
       }
  +    String packageName = lastPkg == null ? "N/A" : lastPkg.getName();
  +
  +    ServiceMonitor monitor = pollerCfgFactory.getServiceMonitor(serviceName);
  +    String monitorClass = monitor == null ? "N/A" : monitor.getClass().getName();
   
       Map<String,String> parameters = new TreeMap<String,String>();
  +    Map<String,String> xmlParams  = new TreeMap<String,String>();
       if (lastPkg != null) {
           for (org.opennms.netmgt.config.poller.Service s : lastPkg.getServiceCollection()) {
               if (s.getName().equalsIgnoreCase(serviceName)) {
                   for (org.opennms.netmgt.config.poller.Parameter p : s.getParameterCollection()) {
  -                    if (p.getValue() != null) {
  +                    if (p.getKey().toLowerCase().equals("password")) {
  +                        continue; // Hide passwords for security reasons
  +                    }
  +                    if (p.getValue() == null) {
  +                        xmlParams.put(p.getKey(), p.getAnyObject().toString().replaceAll("<","&lt;").replaceAll(">", "&gt;").replaceAll("[\\r\\n]+", "<br/>"));
  +                    } else {
                           parameters.put(p.getKey(), p.getValue());
                       }
                   }
  
positive.code:     PollerConfig pollerCfgFactory = PollerConfigFactory.getInstance();
      pollerCfgFactory.rebuildPackageIpListMap();
      
      Enumeration<Package> en = pollerCfgFactory.enumeratePackage();
      Package lastPkg = null;
      while (en.hasMoreElements()) {
          Package pkg = en.nextElement();
          if (!pkg.getRemote() &&
  
negative.code: 		org.opennms.netmgt.config.PollerConfigFactory,
  		org.opennms.netmgt.config.PollerConfig,
  		org.opennms.netmgt.config.poller.Package,
  		org.opennms.netmgt.poller.ServiceMonitor,
  		org.opennms.web.springframework.security.Authentication,
  		org.opennms.web.element.ElementUtil,
  		org.opennms.web.element.NetworkElementFactory,
  