示例#1
0
 private String getValueString(String key, Vector[] args) {
   Vector<String> keys = args[0];
   for (int i = 0; i < keys.size(); i++) {
     if (keys.get(i).equals(key)) {
       return (String) args[1].get(i);
     }
   }
   return null;
 }
 public void doPost(HttpServletRequest req, HttpServletResponse res)
     throws IOException, ServletException {
   res.setContentType("text/html");
   hs = req.getSession(true);
   PrintWriter pw = res.getWriter();
   uid = req.getParameter("did");
   if (!uid.equals("")) {
     v = D.getDealer(uid);
     pw.println(
         "<html><head><TITLE>Web-Enabled Automated Manufacturing System</TITLE><script language=javascript>function set() {");
     pw.println(
         "document.deldealer.select1.value='"
             + (String) v.elementAt(4)
             + "'} </script></head><P align=center><FONT color=deepskyblue size=4><STRONG>MODIFY&nbsp;DEALER </STRONG></FONT></P> ");
     pw.println(
         "<body onLoad=set()><br><br><form name=deldealer method=post action='http://peers:8080/servlet/DelDealer'>");
     pw.println(
         "<center><TABLE border=0 cellPadding=1 cellSpacing=1 width='75%' style='HEIGHT: 147px; WIDTH: 248px'>");
     pw.println(
         "<TR><TD>DealerId&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD><INPUT id=text1 name=did value="
             + (String) v.elementAt(0)
             + "></TD></TR>");
     pw.println(
         "<TR><TD>DealerName</TD><TD><INPUT id=text2 name=dname value="
             + (String) v.elementAt(1)
             + " ></TD></TR><TR><TD>DealerAddress</TD>");
     pw.println(
         "<TD><INPUT id=text2 type=text name=daddr value="
             + (String) v.elementAt(2)
             + "></TD></TR><TR><TD>CreditLimit</TD><TD><INPUT id=text4 name=cl value="
             + v.get(3).toString());
     pw.println(
         "></TD></TR><TR><TD><P>Staus</P></TD><td><SELECT id=select1 name=status style='HEIGHT: 22px; LEFT: 1px; TOP: 1px; WIDTH: 136px'> <OPTION ");
     pw.println(
         "selected value=''></OPTION><OPTION value=Active>Active</OPTION><OPTION value=Inactive>Inactive</OPTION></SELECT><INPUT id=submit1 name=submit1 style='LEFT: 151px; TOP: 318px' type=submit value=Delete></TD></TR>");
     pw.println("</table></center></form></body></html>");
     pw.flush();
     pw.close();
   }
 }
  public void _jspService(HttpServletRequest request, HttpServletResponse response)
      throws java.io.IOException, ServletException {

    JspFactory _jspxFactory = null;
    javax.servlet.jsp.PageContext pageContext = null;
    HttpSession session = null;
    ServletContext application = null;
    ServletConfig config = null;
    JspWriter out = null;
    Object page = this;
    JspWriter _jspx_out = null;

    try {
      _jspxFactory = JspFactory.getDefaultFactory();
      response.setContentType("text/html;charset=ISO-8859-1");
      pageContext = _jspxFactory.getPageContext(this, request, response, null, true, 8192, true);
      application = pageContext.getServletContext();
      config = pageContext.getServletConfig();
      session = pageContext.getSession();
      out = pageContext.getOut();
      _jspx_out = out;

      out.write("\n");
      out.write("\n");
      out.write("\n");
      out.write("\n");
      out.write("\n");
      out.write("\n");
      out.write("\n");
      out.write("\n");
      out.write("\n");
      out.write("\n");

      User user = null;
      UserFactory userFactory = UserFactory.getInstance();
      String userID = request.getParameter("userID");
      try {
        UserFactory.init();
        user = userFactory.getUser(userID);
      } catch (Exception e) {
        throw new ServletException("Could not find user " + userID + " in user factory.", e);
      }

      out.write("\n");
      out.write("<html>\n");
      out.write("<head>\n    ");
      out.write("<title>WebTelemetry -  | User Management | User Detail");
      out.write("</title>\n    ");
      out.write("<base HREF=\"");
      out.print(org.opennms.web.Util.calculateUrlBase(request));
      out.write("\" />\n    ");
      out.write(
          "<link rel=\"stylesheet\" type=\"text/css\" href=\"/wt-portal/css/default.css\" />\n\t");
      out.write("<script type=\"text/javascript\" src=\"/wt-portal/javascript/WTtools.js\">");
      out.write("</script>\n");
      out.write("</head>\n");
      out.write("<body>\n");
      String title = " User Management  - Detail Summary for: " + userID;
      out.write("\n");
      /* ----  c:if ---- */
      org.apache.taglibs.standard.tag.el.core.IfTag _jspx_th_c_if_0 =
          (org.apache.taglibs.standard.tag.el.core.IfTag)
              _jspx_tagPool_c_if_test.get(org.apache.taglibs.standard.tag.el.core.IfTag.class);
      _jspx_th_c_if_0.setPageContext(pageContext);
      _jspx_th_c_if_0.setParent(null);
      _jspx_th_c_if_0.setTest("${not param.orgAdminPopup}");
      int _jspx_eval_c_if_0 = _jspx_th_c_if_0.doStartTag();
      if (_jspx_eval_c_if_0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) {
        do {
          out.write("\n    ");
          JspRuntimeLibrary.include(
              request,
              response,
              "/includes/header.jsp"
                  + "?"
                  + "title="
                  + java.net.URLEncoder.encode("" + title)
                  + "&"
                  + "help="
                  + "monitoringadmin%2Fusers%2FWTHelp_User.html",
              out,
              false);
          out.write("\n");
          int evalDoAfterBody = _jspx_th_c_if_0.doAfterBody();
          if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) break;
        } while (true);
      }
      if (_jspx_th_c_if_0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) return;
      _jspx_tagPool_c_if_test.reuse(_jspx_th_c_if_0);
      out.write("\n");
      if (_jspx_meth_c_if_1(pageContext)) return;
      out.write("\n\n");
      out.write("<!-- BEGIN FRAMING TABLE:open tags, keep at 100%-->\n");
      out.write("<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\t");
      out.write("<tr>\n\t\t");
      out.write("<td width=\"10\">");
      out.write(
          "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"1\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
      out.write("</td>\n\t\t");
      out.write("<td>\n");
      out.write("<!-- END FRAMING TABLE:open tags, keep at 100%-->\n");
      out.write("<table width=\"98%\"border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n    ");
      out.write("<tr class=\"tableHeader\">\n        ");
      out.write("<td class=\"tableHeader\" colspan=\"2\">User Information");
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowLight\">\n        ");
      out.write("<td class=\"tableText\" width=\"25%\">");
      out.write("<b>Full Name:");
      out.write("</b>");
      out.write("</td>\n        ");
      out.write("<td class=\"tableText\" width=\"75%\">");
      out.print(user.getFullName());
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowDark\">\n        ");
      out.write("<td class=\"tableText\">");
      out.write("<b>Comments:");
      out.write("</b>");
      out.write("</td>\n        ");
      out.write("<td class=\"tableText\">");
      out.print(user.getUserComments());
      out.write("</td>\n     ");
      out.write("</tr>\n");
      out.write("</table>\n");
      out.write("<br>\n");
      out.write("<table width=\"98%\"border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n    ");
      out.write("<tr class=\"tableHeader\">\n        ");
      out.write("<td class=\"tableHeader\" colspan=\"2\">Notification Information");
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowLight\">\n        ");
      out.write("<td class=\"tableText\" width=\"25%\">");
      out.write("<b>Email:");
      out.write("</b>");
      out.write("</td>\n        ");
      out.write("<td class=\"tableText\" width=\"75%\">");
      out.print(userFactory.getEmail(userID));
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowDark\">\n        ");
      out.write("<td class=\"tableText\">");
      out.write("<b>Pager Email:");
      out.write("</b>");
      out.write("</td>\n        ");
      out.write("<td class=\"tableText\">");
      out.print(userFactory.getPagerEmail(userID));
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowLight\">\n        ");
      out.write("<td class=\"tableText\">");
      out.write("<b>Numerical Service:");
      out.write("</b>");
      out.write("</td>\n        ");
      out.write("<td class=\"tableText\">");
      out.print(userFactory.getNumericPage(userID));
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowDark\">\n        ");
      out.write("<td class=\"tableText\">");
      out.write("<b>Numerical Pin:");
      out.write("</b>");
      out.write("</td>\n        ");
      out.write("<td class=\"tableText\">");
      out.print(userFactory.getNumericPin(userID));
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowLight\">\n        ");
      out.write("<td class=\"tableText\">");
      out.write("<b>Text Service:");
      out.write("</b>");
      out.write("</td>\n        ");
      out.write("<td class=\"tableText\">");
      out.print(userFactory.getTextPage(userID));
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowDark\">\n        ");
      out.write("<td class=\"tableText\">");
      out.write("<b>Text Pin:");
      out.write("</b>");
      out.write("</td>\n        ");
      out.write("<td class=\"tableText\">");
      out.print(userFactory.getTextPin(userID));
      out.write("</td>\n     ");
      out.write("</tr>\n");
      out.write("</table>\n");
      out.write("<br>\n");
      out.write("<table width=\"98%\"border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n    ");
      out.write("<tr class=\"tableHeader\">\n        ");
      out.write("<td class=\"tableHeader\" colspan=\"2\">Duty Schedules");
      out.write("</td>\n     ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowLight\">\n        ");
      out.write("<td class=\"tableText\" colspan=\"2\">");
      out.write("<br />\n        ");
      out.write("<!-- weekly schedule -->\n                ");
      out.write(
          "<table width=\"50%\" border=\"1\" bordercolor=\"#999999\" cellspacing=\"0\" cellpadding=\"2\" >\n\t\t\t");
      Collection dutySchedules = user.getDutyScheduleCollection();
      out.write("\n                        ");

      int i = 0;
      Iterator iter = dutySchedules.iterator();
      while (iter.hasNext()) {
        DutySchedule tmp = new DutySchedule((String) iter.next());
        Vector curSched = tmp.getAsVector();
        i++;

        out.write("\n                        ");
        out.write("<tr>\n                           ");
        ChoiceFormat days = new ChoiceFormat("0#Mo|1#Tu|2#We|3#Th|4#Fr|5#Sa|6#Su");
        for (int j = 0; j < 7; j++) {
          Boolean curDay = (Boolean) curSched.get(j);

          out.write("\n                          ");
          out.write("<td width=\"5%\">\n                           ");
          out.print((curDay.booleanValue() ? days.format(j) : "X"));
          out.write("\n                          ");
          out.write("</td>\n                          ");
        }
        out.write("\n                          ");
        out.write("<td width=\"5%\">\n                            ");
        out.print(curSched.get(7));
        out.write("\n                          ");
        out.write("</td>\n                          ");
        out.write("<td width=\"5%\">\n                            ");
        out.print(curSched.get(8));
        out.write("\n                          ");
        out.write("</td>\n                        ");
        out.write("</tr>\n                        ");
      }
      out.write("\n                      ");
      out.write("</table>\n        ");
      out.write("<!-- end weekly schedule -->   \n        ");
      out.write("</td>\n    ");
      out.write("</tr>\n    ");
      out.write("<tr class=\"tableRowLight\">\n        ");
      out.write("<td class=\"tableText\" colspan=\"2\">");
      out.write(
          "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"4\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
      out.write("</td>\n    ");
      out.write("</tr> \n");
      out.write("</table>\n");
      out.write("<br>");
      out.write("<br>\n");
      out.write("<b>Member of the Following Organizations &amp; Groups:");
      out.write("</b>\n");
      out.write("<!-- BEGIN: NEW ASSIGNED GROUPS TABLE -->\n");
      out.write("<table width=\"98%\"border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\n    ");

      // Get the user's orgs
      WTOrganizationDAO orgDAO = DAOImpl.OrgDAO;
      WTOrganization[] orgs = orgDAO.getWTOrganization();

      if (orgs != null) {
        // Loop thru orgs
        for (int idx = 0; idx < orgs.length; idx++) {

          out.write("\n\n    ");
          out.write("<tr class=\"tableHeader\">\n        ");
          out.write("<td class=\"tableHeader\" colspan=\"2\">Organization Name: ");
          out.print(orgs[idx].getName());
          out.write("</td>\n\t");
          out.write("</tr>\n    ");
          out.write("<tr class=\"tableRowLight\">\n        ");
          out.write("<td class=\"tableText\" width=\"25%\">");
          out.write("<b>Assigned Groups:");
          out.write("</b>");
          out.write("</td>\n        ");
          out.write("<td class=\"tableText\" width=\"75%\">\n            ");

          // Get the orgs groups
          WTGroupManager grpMgr = ManagersImpl.GroupManager;
          int[] orgids = {orgs[idx].getID()};
          List groups = grpMgr.getUserGroups(user.getUserId(), orgids);

          if (groups != null) {
            // Loop thru the groups
            for (Iterator iterGrps = groups.iterator(); iterGrps.hasNext(); ) {
              WTGroup group = (WTGroup) iterGrps.next();
              WTRole role = (group.getRoles() == null ? null : (WTRole) group.getRoles().get(0));

              out.write("\n                    ");
              out.print(group.getName());
              out.write(" (");
              out.print((role == null ? "" : role.getName()));
              out.write(")");
              out.write("<br/>\n            ");
            }
          }

          out.write("\n\n        ");
          out.write("</td>\n\t");
          out.write("</tr>\n\n    ");
        }
      }

      out.write("\n\n    ");
      out.write("<tr class=\"tableRowLight\">\n        ");
      out.write("<td class=\"tableText\" colspan=\"2\">");
      out.write(
          "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"4\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
      out.write("</td>\n    ");
      out.write("</tr> \n");
      out.write("</table>\n");
      out.write("<!-- END: NEW ASSIGNED GROUPS TABLE -->\n\n\n");
      out.write("<!-- BEGIN FRAMING TABLE:close tags-->\n\t\t");
      out.write("</td>\n\t");
      out.write("</tr>\n");
      out.write("</table>\n");
      out.write("<!-- END FRAMING TABLE:close tags-->\n");
      out.write("<br>\n\n");
      JspRuntimeLibrary.include(request, response, "/includes/footer.jsp", out, false);
      out.write("\n");
      out.write("</body>\n");
      out.write("</html>\n\n");
    } catch (Throwable t) {
      out = _jspx_out;
      if (out != null && out.getBufferSize() != 0) out.clearBuffer();
      if (pageContext != null) pageContext.handlePageException(t);
    } finally {
      if (_jspxFactory != null) _jspxFactory.releasePageContext(pageContext);
    }
  }
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    // set the response

    Shepherd myShepherd = new Shepherd();

    Vector rEncounters = new Vector();

    // setup data dir
    String rootWebappPath = getServletContext().getRealPath("/");
    File webappsDir = new File(rootWebappPath).getParentFile();
    File shepherdDataDir = new File(webappsDir, CommonConfiguration.getDataDirectoryName());
    // if(!shepherdDataDir.exists()){shepherdDataDir.mkdir();}
    File encountersDir = new File(shepherdDataDir.getAbsolutePath() + "/encounters");
    // if(!encountersDir.exists()){encountersDir.mkdir();}

    // set up the files
    String gisFilename = "geneGIS_export_" + request.getRemoteUser() + ".csv";
    File gisFile = new File(encountersDir.getAbsolutePath() + "/" + gisFilename);

    myShepherd.beginDBTransaction();

    try {

      // set up the output stream
      FileOutputStream fos = new FileOutputStream(gisFile);
      OutputStreamWriter outp = new OutputStreamWriter(fos);

      try {

        EncounterQueryResult queryResult =
            EncounterQueryProcessor.processQuery(
                myShepherd, request, "year descending, month descending, day descending");
        rEncounters = queryResult.getResult();

        int numMatchingEncounters = rEncounters.size();

        // build the CSV file header
        StringBuffer locusString = new StringBuffer("");
        int numLoci = 2; // most covered species will be loci
        try {
          numLoci = (new Integer(CommonConfiguration.getProperty("numLoci"))).intValue();
        } catch (Exception e) {
          System.out.println("numPloids configuration value did not resolve to an integer.");
          e.printStackTrace();
        }

        for (int j = 0; j < numLoci; j++) {
          locusString.append(",Locus" + (j + 1) + " A1,Locus" + (j + 1) + " A2");
        }
        // out.println("<html><body>");
        // out.println("Individual ID,Other ID 1,Date,Time,Latitude,Longitude,Area,Sub
        // Area,Sex,Haplotype"+locusString.toString());

        outp.write(
            "Individual ID,Other ID 1,Date,Time,Latitude,Longitude,Area,Sub Area,Sex,Haplotype"
                + locusString.toString()
                + "\n");

        for (int i = 0; i < numMatchingEncounters; i++) {

          Encounter enc = (Encounter) rEncounters.get(i);
          String assembledString = "";
          if (enc.getIndividualID() != null) {
            assembledString += enc.getIndividualID();
          }
          if (enc.getAlternateID() != null) {
            assembledString += "," + enc.getAlternateID();
          } else {
            assembledString += ",";
          }

          String dateString = ",";
          if (enc.getYear() > 0) {
            dateString += enc.getYear();
            if (enc.getMonth() > 0) {
              dateString += ("-" + enc.getMonth());
              if (enc.getDay() > 0) {
                dateString += ("-" + enc.getDay());
              }
            }
          }
          assembledString += dateString;

          String timeString = ",";
          if (enc.getHour() > -1) {
            timeString += enc.getHour() + ":" + enc.getMinutes();
          }
          assembledString += timeString;

          if ((enc.getDecimalLatitude() != null) && (enc.getDecimalLongitude() != null)) {
            assembledString += "," + enc.getDecimalLatitude();
            assembledString += "," + enc.getDecimalLongitude();
          } else {
            assembledString += ",,";
          }

          assembledString += "," + enc.getVerbatimLocality();
          assembledString += "," + enc.getLocationID();
          assembledString += "," + enc.getSex();

          // find and print the haplotype
          String haplotypeString = ",";
          if (enc.getHaplotype() != null) {
            haplotypeString += enc.getHaplotype();
          }

          // find and print the ms markers
          String msMarkerString = "";
          List<TissueSample> samples = enc.getTissueSamples();
          int numSamples = samples.size();
          boolean foundMsMarkers = false;
          for (int k = 0; k < numSamples; k++) {
            if (!foundMsMarkers) {
              TissueSample t = samples.get(k);
              List<GeneticAnalysis> analyses = t.getGeneticAnalyses();
              int aSize = analyses.size();
              for (int l = 0; l < aSize; l++) {
                GeneticAnalysis ga = analyses.get(l);
                if (ga.getAnalysisType().equals("MicrosatelliteMarkers")) {
                  foundMsMarkers = true;
                  MicrosatelliteMarkersAnalysis ga2 = (MicrosatelliteMarkersAnalysis) ga;
                  List<Locus> loci = ga2.getLoci();
                  int localLoci = loci.size();
                  for (int m = 0; m < localLoci; m++) {
                    Locus locus = loci.get(m);
                    if (locus.getAllele0() != null) {
                      msMarkerString += "," + locus.getAllele0();
                    } else {
                      msMarkerString += ",";
                    }
                    if (locus.getAllele1() != null) {
                      msMarkerString += "," + locus.getAllele1();
                    } else {
                      msMarkerString += ",";
                    }
                  }
                }
              }
            }
          }

          // out.println("<p>"+assembledString+haplotypeString+msMarkerString+"</p>");
          outp.write(assembledString + haplotypeString + msMarkerString + "\n");
        }
        outp.close();
        outp = null;

        // now write out the file
        response.setContentType("text/csv");
        response.setHeader("Content-Disposition", "attachment;filename=" + gisFilename);
        ServletContext ctx = getServletContext();
        // InputStream is = ctx.getResourceAsStream("/encounters/"+gisFilename);
        InputStream is = new FileInputStream(gisFile);

        int read = 0;
        byte[] bytes = new byte[BYTES_DOWNLOAD];
        OutputStream os = response.getOutputStream();

        while ((read = is.read(bytes)) != -1) {
          os.write(bytes, 0, read);
        }
        os.flush();
        os.close();

      } catch (Exception ioe) {
        ioe.printStackTrace();
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println(ServletUtilities.getHeader(request));
        out.println(
            "<html><body><p><strong>Error encountered</strong> with file writing. Check the relevant log.</p>");
        out.println(
            "<p>Please let the webmaster know you encountered an error at: EncounterSearchExportGeneGISFormat servlet</p></body></html>");
        out.println(ServletUtilities.getFooter());
        out.close();
        outp.close();
        outp = null;
      }

    } catch (Exception e) {
      e.printStackTrace();
      response.setContentType("text/html");
      PrintWriter out = response.getWriter();
      out.println(ServletUtilities.getHeader(request));
      out.println("<html><body><p><strong>Error encountered</strong></p>");
      out.println(
          "<p>Please let the webmaster know you encountered an error at: EncounterSearchExportGeneGISFormat servlet</p></body></html>");
      out.println(ServletUtilities.getFooter());
      out.close();
    }
    myShepherd.rollbackDBTransaction();
    myShepherd.closeDBTransaction();
  }
  public void _jspService(HttpServletRequest request, HttpServletResponse response)
      throws java.io.IOException, ServletException {

    JspFactory _jspxFactory = null;
    javax.servlet.jsp.PageContext pageContext = null;
    HttpSession session = null;
    ServletContext application = null;
    ServletConfig config = null;
    JspWriter out = null;
    Object page = this;
    JspWriter _jspx_out = null;

    try {
      _jspxFactory = JspFactory.getDefaultFactory();
      response.setContentType("text/html;charset=ISO-8859-1");
      pageContext = _jspxFactory.getPageContext(this, request, response, null, true, 8192, true);
      application = pageContext.getServletContext();
      config = pageContext.getServletConfig();
      session = pageContext.getSession();
      out = pageContext.getOut();
      _jspx_out = out;

      out.write("\n\n");
      out.write("\n");
      out.write("\n");
      out.write("\n");
      out.write("\n\n\n");
      out.write("\n\n");

      Vector vMibs = (Vector) request.getAttribute("mibs");

      String strIp = (String) request.getAttribute("ip");
      if (strIp == null) strIp = "";

      String strCommunity = (String) request.getAttribute("cs");
      if (strCommunity == null) strCommunity = "";

      String strPort = (String) request.getAttribute("port");
      if (strPort == null) strPort = "161";

      String strRetries = (String) request.getAttribute("retries");
      if (strRetries == null) strRetries = "1";

      String strTimeout = (String) request.getAttribute("timeout");
      if (strTimeout == null) strTimeout = "3000";

      String strOID = (String) request.getAttribute("oid");
      if (strOID == null) strOID = "";

      String strDesc = (String) request.getAttribute("desc");
      if (strDesc == null) strDesc = "";

      String strASN1 = (String) request.getAttribute("asn1");
      if (strASN1 == null) strASN1 = "";

      String authpass = (String) request.getAttribute("authpass");
      if (authpass == null) authpass = "";

      String privpass = (String) request.getAttribute("privpass");
      if (privpass == null) privpass = "";

      String version = (String) request.getAttribute("version");
      if (version == null) version = "version 1";

      String securityname = (String) request.getAttribute("securityname");
      if (securityname == null) securityname = "";

      String seclevel = (String) request.getAttribute("seclevel");
      if (seclevel == null) seclevel = "AUTH_PRIV";

      String authproto = (String) request.getAttribute("authproto");
      authproto = authproto == null ? "MD5" : authproto;

      String privproto = (String) request.getAttribute("privproto");
      privproto = privproto == null ? "DES" : privproto;

      out.write("\n\n\n");
      out.write("<html>\n");
      out.write("<head>\n  ");
      out.write("<title>WebTelemetry - Tools - SNMP Walk");
      out.write("</title>\n  ");
      out.write(
          "<link rel=\"stylesheet\" type=\"text/css\" href=\"/wt-portal/css/default.css\" />\n  ");
      out.write("<script type=\"text/javascript\" src=\"/wt-portal/javascript/WTtools.js\">");
      out.write("</script>\n\n\n\t");
      out.write(
          "<script type=text/javascript>\n\t\n\t// Validate the SNMP form\n\tfunction validateForm()\n\t{\n\t    var seclevel = \"\";\n\t\tvar seclevelChecked = \"\";\n\t\tif (document.snmpwalk.ip.value == \"\" ) \n\t\t{\n\t\t    alert (\"Please fill in the ip address field.\");\n\t\t    return false;\n\t\t}\n\t\telse \n\t\t{\n\t\t\tif (!verifyIP(document.snmpwalk.ip.value))\n\t\t\t{\n\t\t\t\tdocument.snmpwalk.ip.focus();\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\t\t\t\t\t\n\t\tif (document.snmpwalk.port.value != \"\" ) \n\t\t{\n\t\t\tif (!checkInteger(trim(document.snmpwalk.port.value))) {\n\t            alert (\"Please enter a whole number for 'Port' and try again.\");\n\t            document.snmpwalk.port.focus();\n\t            return false;\n\t        }\n\t    }\n\t    \n\t    if (document.snmpwalk.retries.value != \"\" ) \n\t\t{\n\t\t\tif (!checkInteger(trim(document.snmpwalk.retries.value))) {\n\t            alert (\"Please enter a whole number for 'Retries' and try again.\");\n\t            document.snmpwalk.retries.focus();\n\t            return false;\n\t        }\n\t    }\n\t    \n\t    if (document.snmpwalk.timeout.value != \"\" ) \n\t\t{\n");
      out.write(
          "\t\t\tif (!checkInteger(trim(document.snmpwalk.timeout.value))) {\n\t            alert (\"Please enter a whole number for 'Timeout' and try again.\");\n\t            document.snmpwalk.timeout.focus();\n\t            return false;\n\t        }\n\t    }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\tvar sel = document.getElementById( \"version\");\t\t\t\n\t\tvar opt = sel.options[ sel.selectedIndex];\t\n\t\t\n\t\tif( opt.text != \"version 3\")\n\t\t{\n\t\t\t// Community String\n\t\t\tvar cs = document.snmpwalk.cs.value;\n\t\t\tif (cs == \"\" || cs == null || trim(cs).length ");
      out.write(
          "<= 0)\n\t\t\t{\n\t\t    \talert (\"Please fill in the community string field.\");\n\t\t    \tdocument.snmpwalk.cs.focus();\n\t\t    \treturn false;\n\t\t    }\n\t\t}\n\t\telse\n        {\n            // Security name\n            var secname = document.getElementById( \"securityname\");  \n            if( secname.value == null || trim(secname.value).length == 0)\n            {\n                alert( \"Please enter a security name\");\n                secname.focus();\n                return false;\n            }\n\n            //Find Security level, pass checks\n\t\t\tfor (var i = 0; i ");
      out.write(
          "< document.snmpwalk.seclevel.length; i++)  \n\t\t\t{ \n\t\t\t\tseclevel = document.snmpwalk.seclevel[i].value;\n\t\t\t\tsecChecked = document.snmpwalk.seclevel[i].checked;\n\t\t\n\t\t\t\tif (secChecked){\n\t\t\t\t\tseclevelChecked = seclevel;\n\t\t\t\t}\n\t\n\t\t\t\tif ( (seclevel == \"AUTH_PRIV\") && (secChecked) )\n\t\t\t\t{\n\t\t\t\t\tif( !checkAuthPassFld() || !checkPrivPassFld())\n\t              \t{            \t\n\t               \t\treturn false;\n\t           \t\t}\t\n\t\t\t\t}\n\t\t\t\telse\n\t        \t{\n\t\t \t\t\tif( (seclevel == \"AUTH_NOPRIV\") && (secChecked && !checkAuthPassFld()) )\n\t\t         \t{                \t\n\t\t        \t\treturn false;\n\t\t     \t\t}\n\t\t   \t\t}    \n\t\t\t}   \n        }\n\t    \n\t\t// The following is needed to support Mozilla & IE browsers with retrieving values from drop-down boxes (version, authproto, privproto).\n\t\tvar versionSel = document.snmpwalk.version;\n\t\tvar versionVal = versionSel.options[ versionSel.selectedIndex].text;\t\n\t\tvar authprotoSel = document.snmpwalk.authproto;\n\t\tvar authprotoVal = authprotoSel.options[ authprotoSel.selectedIndex].text;\t\n\t\tvar privprotoSel = document.snmpwalk.privproto;\n");
      out.write(
          "\t\tvar privprotoVal = privprotoSel.options[ privprotoSel.selectedIndex].text;\n\t\t\n\t\t// The followings are needed to avoid passing inappropriate SNMP version-dependent browser saved values to the servlet. \n\t\tvar authpassVal = document.snmpwalk.authpass.value; \n\t\tvar privpassVal = document.snmpwalk.privpass.value; \n\t\tvar communityStr = document.snmpwalk.cs.value;\n\t\t\n\t\tif (versionVal == \"version 3\")\n\t\t{\n\t\t\tcommunityStr = \"\";\n\t\t\tif (seclevelChecked == \"AUTH_NOPRIV\")\n\t\t\t{\n\t\t\t\tprivpassVal = \"\";\n\t\t\t\tprivprotoVal = \"\"; \n\t\t\t}\n\t\t\telse if (seclevelChecked == \"NOAUTH_NOPRIV\")\n\t\t\t{\n\t\t\t\tauthpassVal = \"\";\n\t\t\t\tauthprotoVal = \"\";\n\t\t\t\tprivpassVal = \"\";\n\t\t\t\tprivprotoVal = \"\"; \n\t\t\t}\n\t\t}\n\t\telse \n\t\t{\n\t\t\tauthpassVal = \"\";\n\t\t\tauthprotoVal = \"\";\n\t\t\tprivpassVal = \"\";\n\t\t\tprivprotoVal = \"\"; \n\t\t}\n\t\t\n\t    top.frames[1].document.snmpwalk.ip.value=document.snmpwalk.ip.value;\t    \t\t\n\t    top.frames[1].document.snmpwalk.oid.value=document.snmpwalk.oid.value;\t\n\t    top.frames[1].document.snmpwalk.port.value=document.snmpwalk.port.value;\n\t    top.frames[1].document.snmpwalk.retries.value=document.snmpwalk.retries.value;\n");
      out.write(
          "\t    top.frames[1].document.snmpwalk.timeout.value=document.snmpwalk.timeout.value;\n\t    top.frames[1].document.snmpwalk.cs.value=communityStr;\t\t\n\t    top.frames[1].document.snmpwalk.version.value=versionVal;  \t\t\t\n\t    top.frames[1].document.snmpwalk.securityname.value=document.snmpwalk.securityname.value; \n\t    top.frames[1].document.snmpwalk.seclevel.value=seclevelChecked; \t\t\n\t    top.frames[1].document.snmpwalk.authpass.value=authpassVal; \t\n\t    top.frames[1].document.snmpwalk.authproto.value=authprotoVal; \t\n\t    top.frames[1].document.snmpwalk.privpass.value=privpassVal; \t\n\t    top.frames[1].document.snmpwalk.privproto.value=privprotoVal;    \n\t    top.frames[1].document.snmpwalk.button.value='GetResults';\n\t    top.frames[1].document.snmpwalk.submit();\n\t    \n\t    return true;   \n\t}\n\n\t// Validate ASN.1 value\n\tfunction validateLookup()\n\t{\n\t    if (document.snmpwalk.desc.value == \"\" ) \n\t\t{\n\t\t    alert (\"Please fill in ASN.1 Description (example: hrStorageDescr).\");\n\t\t    return false;\n\t\t}\n\t\telse\n\t\t\treturn true;\n");
      out.write(
          "\t}\n\t\n\t// Show MIB pop-up window\n\tfunction viewMIB()\n\t{\n\t    if (document.snmpwalk.mibs.selectedIndex == -1 ) \n\t\t{\n\t\t    alert (\"Please select a MIB to view.\");\n\t\t}\n\t\tvar mib = document.snmpwalk.mibs.options[document.snmpwalk.mibs.selectedIndex];\n\t    var win = window.open('");
      out.print(WTTools.getMibURL(request));
      out.write(
          "' + mib.text, '', \n\t\t\t'status=yes,resizeable=yes,scrollbars=yes,menubar=yes,height=600,width=800');\t\n\t    return false;\n\t}\n\t\n\t// hide element\n    function hide( targetId)\n    {\n        if (document.getElementById)\n        {\n            target = document.getElementById(targetId);\n            target.style.visibility = \"hidden\";\n            target.style.display = \"none\";\n        }\n    }\n    // show element\n    function show( targetId)\n    {\n        if (document.getElementById)\n        {\n            target = document.getElementById(targetId);\n            target.style.visibility = \"visible\";\n            target.style.display = \"\";\n        }\n    }\n    \n    // Adjust frame\n    function adjustFrames(topFrameSize)\n    {\n    \tvar framesSize = topFrameSize + \",*\";\n    \tparent.document.getElementById(\"snmpframes\").rows = framesSize;   \n    }\n\n\t\n\t// Check for SNMPv3 selection\n\tfunction checkForSNMPv3()\n\t{\n\t\tvar sel = document.getElementById( \"version\");\n\t\tvar opt = sel.options[ sel.selectedIndex];\n\t\tif( opt.text == \"version 3\")\n");
      out.write(
          "\t\t{\t\t\t\n\t\t\thide (\"csOptions\");\n\t\t\tshow (\"snmpOptions\"); \n\t\t\tadjustFrames(420);\n\t\t\tcheckSecLevel();\t\t\t\n\t\t}\n\t\telse\n\t\t{\t\t\t\n\t\t\tshow (\"csOptions\");\n\t\t\thide (\"snmpOptions\"); \n\t\t\thide (\"authOptions\");   \n\t\t\thide (\"privOptions\");   \n\t\t\tadjustFrames(270);\n\t\t}\n\n\t\t// This is work around for IE browsers which do not support ");
      out.write(
          "<option disabled>\n\t\t// This text will not appear for any other browsers as this option can never be selected \n\t\tif(( opt.text == \"SNMPv3 disabled\") || ( opt.text == \"SNMPv3 expired\"))\n\t\t{\n\t\t\talert(\"You are currently not licensed to use this feature.  Please contact your sales representative for questions regarding this feature.\");\n\n\t\t\t// When the user selects SNMP v3 feature, select index is changed to version 1\n\t\t\tsel.selectedIndex = sel.options[sel.selectedIndex];\n\t\t}\n\t}\n\t\n\t// Check Auth Passphrase\n\tfunction checkAuthPassFld()\n    {\n        var authpass = document.getElementById( \"authpassfld\");\n        if( authpass.value == null || authpass.value.length ");
      out.write(
          "< 8)\n        {\n            alert( \"Authentication Passphrase must be 8 characters or more\");\n            authpass.focus();\n            return false;\n        }\n\n        return true;\n    }\n    \n    // Check Privacy Passphrase\n    function checkPrivPassFld()\n    {\n        var privpass = document.getElementById( \"privpassfld\");\n        if( privpass.value == null || privpass.value.length ");
      out.write(
          "< 8)\n        {\n            alert( \"Privacy Passphrase must be 8 characters or more\");\n            privpass.focus();\n            return false;\n        }\n\n        return true;\n    }\n    \n    function checkSecLevel()\n    { \n    \tvar secLevelChecked;   \t\n    \tfor (var i = 0; i ");
      out.write(
          "< document.snmpwalk.seclevel.length; i++)  \n\t\t{ \n\t\t\tvar seclevel = document.snmpwalk.seclevel[i].value;\n\t\t\tvar secChecked = document.snmpwalk.seclevel[i].checked;\n\t\t\tif ( secChecked )\n\t\t\t{\n\t\t\t\tsecLevelChecked = seclevel;\n\t\t\t}\n\t\t}\t\t\n\t\t\n\t\tif ( secLevelChecked == \"AUTH_PRIV\" )\n\t\t{\n\t\t\tif( checkAuthPassFld() || checkPrivPassFld())\n         \t{\n\t\t\t\tshowAuthPriv();\t\n\t\t\t}\n\t\t}\n\t\telse \n    \t{\t    \t\t\n\t  \t\tif ( (secLevelChecked == \"AUTH_NOPRIV\") && checkAuthPassFld() )\n\t    \t{\n\t     \t\tshowAuth();\n\t  \t\t}\n\t  \t\telse \n\t    \t{\n\t    \t\thideAuthPriv();\n\t    \t}\n   \t\t} \n    }\n    \n \n\tfunction showAuthPriv()\n\t{\n\t\tshow( \"authOptions\");\n\t\tshow( \"privOptions\");\n\t}\n\t    \n\t\n\tfunction showAuth()\n\t{\n\t\tshow( \"authOptions\");\n\t\thide( \"privOptions\");\n\t}\n\t    \n\t\n\tfunction hideAuthPriv()\n\t{\n\t\thide( \"authOptions\");\n\t \thide( \"privOptions\");\n\t}\n\t\n\tfunction checkForSpaces( evt)\n    {\n        evt = (evt) ? evt : ((window.event) ? event : null);\n        if( evt)\n        {\n            var elem = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);\n");
      out.write(
          "            if( elem)\n            {\n                var charCode = (evt.charCode) ? evt.charCode : ((evt.which) ? evt.which : evt.keyCode);\n                return( charCode != 32);\n            }\n        }\n    }\n\n\t");
      out.write("</script>\n");
      out.write("</head>\n\n\n");
      out.write("<body onload='checkForSNMPv3()'>\n");
      /* ----  c:import ---- */
      org.apache.taglibs.standard.tag.el.core.ImportTag _jspx_th_c_import_0 =
          (org.apache.taglibs.standard.tag.el.core.ImportTag)
              _jspx_tagPool_c_import_url_context.get(
                  org.apache.taglibs.standard.tag.el.core.ImportTag.class);
      _jspx_th_c_import_0.setPageContext(pageContext);
      _jspx_th_c_import_0.setParent(null);
      _jspx_th_c_import_0.setContext("/wt-monitor");
      _jspx_th_c_import_0.setUrl("/includes/header.jsp");
      int[] _jspx_push_body_count_c_import_0 = new int[] {0};
      try {
        int _jspx_eval_c_import_0 = _jspx_th_c_import_0.doStartTag();
        if (_jspx_eval_c_import_0 != javax.servlet.jsp.tagext.Tag.SKIP_BODY) {
          if (_jspx_eval_c_import_0 != javax.servlet.jsp.tagext.Tag.EVAL_BODY_INCLUDE) {
            javax.servlet.jsp.tagext.BodyContent _bc = pageContext.pushBody();
            _jspx_push_body_count_c_import_0[0]++;
            out = _bc;
            _jspx_th_c_import_0.setBodyContent(_bc);
            _jspx_th_c_import_0.doInitBody();
          }
          do {
            out.write("\n\t");
            if (_jspx_meth_c_param_0(
                _jspx_th_c_import_0, pageContext, _jspx_push_body_count_c_import_0)) return;
            out.write("\n\t");
            if (_jspx_meth_c_param_1(
                _jspx_th_c_import_0, pageContext, _jspx_push_body_count_c_import_0)) return;
            out.write("\n\t");
            if (_jspx_meth_c_param_2(
                _jspx_th_c_import_0, pageContext, _jspx_push_body_count_c_import_0)) return;
            out.write("\n\t");
            if (_jspx_meth_c_param_3(
                _jspx_th_c_import_0, pageContext, _jspx_push_body_count_c_import_0)) return;
            out.write("\n");
            int evalDoAfterBody = _jspx_th_c_import_0.doAfterBody();
            if (evalDoAfterBody != javax.servlet.jsp.tagext.BodyTag.EVAL_BODY_AGAIN) break;
          } while (true);
          if (_jspx_eval_c_import_0 != javax.servlet.jsp.tagext.Tag.EVAL_BODY_INCLUDE)
            out = pageContext.popBody();
          _jspx_push_body_count_c_import_0[0]--;
        }
        if (_jspx_th_c_import_0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) return;
      } catch (Throwable _jspx_exception) {
        while (_jspx_push_body_count_c_import_0[0]-- > 0) out = pageContext.popBody();
        _jspx_th_c_import_0.doCatch(_jspx_exception);
      } finally {
        _jspx_th_c_import_0.doFinally();
        _jspx_tagPool_c_import_url_context.reuse(_jspx_th_c_import_0);
      }
      out.write("\n\n");
      out.write("<!-- BEGIN FRAMING TABLE:open tags, keep at 100%-->\n");
      out.write("<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\t");
      out.write("<tr valign=\"top\">\n\t\t");
      out.write("<td valign=\"top\" width=\"10\">");
      out.write(
          "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"1\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
      out.write("</td>\n\t\t");
      out.write("<td>\n");
      out.write("<!-- END FRAMING TABLE:open tags, keep at 100%-->\n\n");
      out.write("<form action=\"");
      out.print(WTTools.getServletURL(request));
      out.write("WTsnmpWalkServlet\" method=\"get\" name=\"snmpwalk\" autocomplete=\"off\">\n\n");
      out.write(
          "<table width=\"100%\" valign=\"top\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n\n        ");
      out.write("<td width=\"32%\" valign=\"top\" bgcolor=\"#f0f0f0\">\n        ");
      out.write("<!-- BEGIN WALK SNMP TABLES -->\n            ");
      out.write(
          "<table width=\"100%\" valign=\"top\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n                ");
      out.write("<tr class=\"tableHeader\">\n                    ");
      out.write("<td class=\"tableHeader\" colspan=\"2\">Walk an SNMP Agent");
      out.write("</td>\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\" width=\"45%\">");
      out.write("<b>IP Address:");
      out.write("</b>");
      out.write("<A class=\"tt\" HREF=\"javascript: towerTip(");
      out.print(WTTips.TIP_SNMP_IPADDR);
      out.write(");\" TITLE=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    ");
      out.write("<td class=\"tableText\" >");
      out.write("<input type=\"text\" name=\"ip\" value=\"");
      out.print(strIp);
      out.write("\" size=\"23\">");
      out.write("</td>\n                ");
      out.write("</tr>                \n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\" width=\"45%\">");
      out.write("<b>Starting OID:");
      out.write("</b>");
      out.write("<A class=\"tt\" HREF=\"javascript: towerTip(");
      out.print(WTTips.TIP_SNMP_START_OID);
      out.write(");\" TITLE=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    ");
      out.write("<td class=\"tableText\" >");
      out.write("<input type=\"text\" size=\"23\" name=\"oid\" value=\"");
      out.print(strOID);
      out.write("\">");
      out.write("</td>\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\" width=\"45%\">");
      out.write("<b>Port:");
      out.write("</b>");
      out.write("<A class=\"tt\" HREF=\"javascript: towerTip(");
      out.print(WTTips.TIP_SNMP_PORT);
      out.write(");\" TITLE=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    ");
      out.write("<td class=\"tableText\" >");
      out.write("<input type=\"text\" size=\"23\" maxlength=10 name=\"port\" value=\"");
      out.print(strPort);
      out.write("\" >");
      out.write("</td>               \t\t\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\" width=\"45%\">");
      out.write("<b>Retries:");
      out.write("</b>");
      out.write("<A class=\"tt\" HREF=\"javascript: towerTip(");
      out.print(WTTips.TIP_RETRIES);
      out.write(");\" TITLE=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    ");
      out.write("<td class=\"tableText\" >");
      out.write("<input type=\"text\" size=\"4\" maxlength=10 name=\"retries\" value=\"");
      out.print(strRetries);
      out.write("\" >");
      out.write("</td>               \t\t\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\" width=\"45%\">");
      out.write("<b>Timeout(ms):");
      out.write("</b>");
      out.write("<A class=\"tt\" HREF=\"javascript: towerTip(");
      out.print(WTTips.TIP_TIMEOUT);
      out.write(");\" TITLE=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    ");
      out.write("<td class=\"tableText\" >");
      out.write("<input type=\"text\" size=\"23\" maxlength=10 name=\"timeout\" value=\"");
      out.print(strTimeout);
      out.write("\" >");
      out.write("</td>               \t\t\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\" width=\"45%\">");
      out.write("<b>SNMP Version:");
      out.write("</b>");
      out.write("<A class=\"tt\" HREF=\"javascript: towerTip(");
      out.print(WTTips.TIP_SNMP_VERSION);
      out.write(");\" TITLE=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    ");
      out.write("<td class=\"tableText\" >\n                    \t");
      out.write(
          "<select name=\"version\" id=\"version\" onclick=\"checkForSNMPv3()\">\n                \t\t\t");
      out.write("<option ");
      out.print(version.equals("version 1") ? "SELECTED" : "");
      out.write(">version 1\n                \t\t\t");
      out.write("<option ");
      out.print(version.equals("version 2c") ? "SELECTED" : "");
      out.write(">version 2c\n\t");

      com.websina.license.LicenseManager lim = com.websina.license.LicenseManager.getInstance();
      if (lim != null) { // Check if license is not null
        if (lim.isValid()) { //  Check if license is valid
          if (((Boolean.valueOf(
                  lim.getFeature(com.websina.license.License.WT_SECURE_SNMPV3_ENABLED_FIELD_NAME)))
              .booleanValue())) { //  Check if feature is enabled
            if ((lim.daysLeft(com.websina.license.License.WT_SECURE_SNMPV3_EXPIRATION_FIELD_NAME)
                    > 0)
                || (lim.daysLeft(com.websina.license.License.WT_SECURE_SNMPV3_EXPIRATION_FIELD_NAME)
                    == -1)) { // Check if feature has expired (-1 indicates never expired)

              out.write("\t\t\t\t\n                \t\t\t");
              out.write("<option ");
              out.print(version.equals("version 3") ? "SELECTED" : "");
              out.write(">version 3\n\t");
            } else {
              out.write("\n\t\t\t\t\t\t\t");
              out.write("<!-- The text for ");
              out.write(
                  "<option disabled> tag is changed as a workaround for IE browsers -->\n\t\t\t\t");
              out.write(
                  "<!-- Although other browsers will not allow to select this option -->\n\t\t\t\t");
              out.write(
                  "<!-- IE lets you select it and hence call checkForSNMPv3() which displays a message that the feature is not enabled and select version 1 -->\n\t\t\t\t");
              out.write("<!-- SNMPv3 enabled and expired -->\n\t\t\t\t");
              out.write("<option disabled=\"disabled\" style=\"color:#aaa\">SNMPv3 expired");
              out.write("</option>\n\t");
            }
          } else {
            out.write("\n\t\t\t\t\t\t\t");
            out.write("<!-- License is valid, SNMPv3 is disabled -->\n\t\t\t\t");
            out.write("<option disabled=\"disabled\" style=\"color:#aaa\">SNMPv3 disabled");
            out.write("</option>\n     ");
          }
        }
      }
      out.write("  \n            \t\t\t");
      out.write("</select>\n                    ");
      out.write("</td>\n             \t");
      out.write("</tr>\n            ");
      out.write("</table>\n            \n            ");
      out.write("<!-- COMMUNITY STRING OPTION -->\n                \n            ");
      out.write("<div id=\"csOptions\" style=\"visibility: visible\"> \n\t\t\t\t");
      out.write(
          "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n                \t");
      out.write("<tr class=\"tableRowLight\">\n               \t  \t\t");
      out.write("<td class=\"tableText\" width=\"45%\">");
      out.write("<b>Community String:");
      out.write("</b>");
      out.write("<A class=\"tt\" HREF=\"javascript: towerTip(");
      out.print(WTTips.TIP_SNMP_COMMSTR);
      out.write(");\" TITLE=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                   \t\t");
      out.write("<td class=\"tableText\" >");
      out.write("<input type=\"password\" name=\"cs\" value=\"");
      out.print(strCommunity);
      out.write("\" size=\"23\">");
      out.write("</td>\n                \t");
      out.write("</tr>\n             \t");
      out.write("</table>\n             ");
      out.write("</div>\n                \n\t\t\t");
      out.write("<!-- SNMP v3 OPTIONS -->               \n                \n\t\t\t");
      out.write("<div id=\"snmpOptions\" style=\"display: none; visibility: hidden\"> \n\t\t\t\t");
      out.write(
          "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n\t\t\t\t\t\t\t\n                \t");
      out.write("<!-- SNMP Version 3 Config Label -->\n                \t");
      out.write("<BR/>");
      out.write("<HR width=\"95% align=\"center\">\n                \t");
      out.write("<tr class=\"tableRowLight\">\n                \t\t");
      out.write("<td class=\"tableText\" colspan=\"2\">");
      out.write("<b>SNMP Version 3 Options");
      out.write("</b>");
      out.write("</td>\n                \t");
      out.write("</tr>                              \n                \t\n                \t");
      out.write("<!-- Security Name -->\n                \t");
      out.write("<tr class=\"tableRowLight\">\n                    \t");
      out.write("<td class=\"tableText\" width=\"45%\">");
      out.write("<b>Security Name:");
      out.write("</b>");
      out.write("</td>\n                    \t");
      out.write("<td class=\"tableText\" >");
      out.write(
          "<INPUT type=\"text\" name=\"securityname\" id=\"securityname\" size=\"23\" maxlength=\"255\" value=\"");
      out.print(securityname);
      out.write("\" >");
      out.write("</td>\n                \t");
      out.write("</tr> \n                \t\n                \t");
      out.write("<!-- Security Level Options -->\n                \t");
      out.write("<tr class=\"tableRowLight\"> \n                    \t");
      out.write("<td class=\"tableText\">");
      out.write("<b>Security Level:");
      out.write("</b>");
      out.write("<A class=\"tt\" HREF=\"javascript: towerTip(");
      out.print(WTTips.TIP_SNMP_SECURITY_LEVEL);
      out.write(");\" TITLE=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n               \t\t");
      out.write("</tr>\n               \t\t\n               \t\t");
      out.write("<!-- Authentication with Privacy radio button-->\n               \t\t");
      out.write("<tr class=\"tableRowLight\">\n                    \t");
      out.write("<td class=\"tableText\" colspan=\"2\">\n                    \t\t");
      out.write(
          "<input type=\"radio\" onClick=\"showAuthPriv();adjustFrames(600)\" name=\"seclevel\" id=\"authpriv\" \n                    \t\tvalue=\"AUTH_PRIV\" ");
      out.print("AUTH_PRIV".equals(seclevel) ? "CHECKED" : "");
      out.write("> \n                    \t\tAuthentication with Privacy\n                   \t\t");
      out.write("</td>\n               \t\t");
      out.write("</tr>\n               \t\t\n               \t\t");
      out.write("<!-- Authentication without Privacy radio button-->\n               \t\t");
      out.write("<tr class=\"tableRowLight\"> \n                    \t");
      out.write("<td class=\"tableText\" colspan=\"2\">\n                    \t\t");
      out.write(
          "<input type=\"radio\" onClick=\"showAuth();adjustFrames(500)\" name=\"seclevel\" id=\"authnopriv\" \n                    \t\tvalue=\"AUTH_NOPRIV\" ");
      out.print("AUTH_NOPRIV".equals(seclevel) ? "CHECKED" : "");
      out.write(
          "> \n                    \t\tAuthentication without Privacy\n                   \t\t");
      out.write("</td>\n               \t\t");
      out.write("</tr> \n               \t\t\n               \t\t");
      out.write("<!-- No Authentication and No Privacy radio button-->\n               \t\t");
      out.write("<tr class=\"tableRowLight\"> \n                    \t");
      out.write("<td class=\"tableText\" colspan=\"2\">\n                    \t\t");
      out.write(
          "<input type=\"radio\" onClick=\"hideAuthPriv();adjustFrames(420)\" name=\"seclevel\" id=\"noauthnopriv\" \n                    \t\tvalue=\"NOAUTH_NOPRIV\" ");
      out.print("NOAUTH_NOPRIV".equals(seclevel) ? "CHECKED" : "");
      out.write(
          "> \n                    \t\tNo Authentication and no Privacy\n                   \t\t");
      out.write("</td>\n               \t\t");
      out.write("</tr> \n               \t\t\n              \t");
      out.write("</table>\n\t\t\t");
      out.write("</div>  \t\n  \n\t\t\t");
      out.write("<!-- Authentication Passphrase & Protocol-->\t\n\t\t\t");
      out.write("<div id=\"authOptions\" style=\"display:none; visibility:hidden\"> \n\t\t\t\t");
      out.write(
          "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n               \t\t");
      out.write("<br/>\n               \t\t");
      out.write("<!-- Authentication Passphrase -->\n               \t\t");
      out.write("<tr class=\"tableRowLight\">               \t\t\t \n                    \t\t");
      out.write("<td class=\"tableText\" colspan=\"2\">");
      out.write("<b>Authentication:");
      out.write("</b>");
      out.write("</td> \n               \t\t");
      out.write("</tr> \n               \t\t");
      out.write("<tr class=\"tableRowLight\"> \n               \t\t\t");
      out.write("<td class=\"tableText\" width=\"31%\">Passphrase");
      out.write("<a class=\"tt\" href=\"javascript:towerTip(");
      out.print(WTTips.TIP_SNMP_AUTH_PASS);
      out.write(");\" title=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    \t");
      out.write("<td class=\"tableText\" >");
      out.write(
          "<input type=\"password\" name=\"authpass\" id=\"authpassfld\" size=\"18\" maxlength=\"255\" value=\"");
      out.print(authpass);
      out.write("\" >&nbsp;(min. 8 char.)");
      out.write("</td>\n               \t\t");
      out.write("</tr>\n               \t\t               \t\t\n               \t\t");
      out.write("<!-- Authentication Protocol -->               \t\t\n               \t\t");
      out.write("<tr class=\"tableRowLight\"> \n               \t\t\t");
      out.write("<td class=\"tableText\" width=\"31%\">Protocol");
      out.write("<a class=\"tt\" href=\"javascript:towerTip(");
      out.print(WTTips.TIP_SNMP_AUTH_PROC);
      out.write(");\" title=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    \t");
      out.write("<td class=\"tableText\" >\n                    \t\t");
      out.write("<select name=\"authproto\" id=\"authprotofld\">\n                \t\t\t\t");
      out.write("<option ");
      out.print("MD5".equals(authproto) ? "SELECTED" : "");
      out.write(">MD5");
      out.write("</option>\n                \t\t\t\t");
      out.write("<option ");
      out.print("SHA".equals(authproto) ? "SELECTED" : "");
      out.write(">SHA");
      out.write("</option>\n            \t\t\t\t");
      out.write("</select>            \t\t\t \n            \t\t\t");
      out.write("</td>                      \t             \t\t\n               \t\t");
      out.write("</tr>\n           \t\t");
      out.write("</table>\n\t\t\t");
      out.write("</div>  \t\n             \t\t\n            ");
      out.write("<!-- Privacy Passphrase & Protocol-->   \t\t\n\t       \t");
      out.write("<div id=\"privOptions\" style=\"display:none; visibility:hidden\"> \n\t\t\t\t");
      out.write(
          "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n               \t\t");
      out.write("<br/>               \t\t              \t\t\n               \t\t");
      out.write("<!-- Privacy Passphrase -->\n               \t\t");
      out.write("<tr class=\"tableRowLight\">\n                    \t\t");
      out.write("<td class=\"tableText\" colspan=\"2\">");
      out.write("<b>Privacy:");
      out.write("</b>");
      out.write("</td>\n                    ");
      out.write("</tr>                \t\t\n               \t\t\n               \t\t");
      out.write("<tr class=\"tableRowLight\"> \n               \t\t\t");
      out.write("<td class=\"tableText\" width=\"31%\">Passphrase");
      out.write("<a class=\"tt\" href=\"javascript:towerTip(");
      out.print(WTTips.TIP_SNMP_PRIV_PASS);
      out.write(");\" title=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    \t");
      out.write("<td class=\"tableText\" >");
      out.write(
          "<input type=\"password\" name=\"privpass\" id=\"privpassfld\" size=\"18\" maxlength=\"255\" value=\"");
      out.print(privpass);
      out.write("\" >&nbsp;(min. 8 char.)");
      out.write("</td>\n               \t\t");
      out.write("</tr>\n               \t\t    \n               \t\t");
      out.write("<!-- Privacy Protocol -->              \t\t\n               \t\t");
      out.write("<tr class=\"tableRowLight\"> \n               \t\t\t");
      out.write("<td class=\"tableText\" width=\"31%\">Protocol");
      out.write("<a class=\"tt\" href=\"javascript:towerTip(");
      out.print(WTTips.TIP_SNMP_PRIV_PROC);
      out.write(");\" title=\"Telemetry Tip\">");
      out.write("<img src=\"/wt-portal/images/icons/tower_tips.gif\" border=\"0\">");
      out.write("</a>");
      out.write("</td>\n                    \t");
      out.write("<td class=\"tableText\" >                    \t\t\n                    \t\t");
      out.write("<select name=\"privproto\" id=\"privprotofld\">\n                \t\t\t\t");
      out.write("<option ");
      out.print("DES".equals(privproto) ? "SELECTED" : "");
      out.write(">DES");
      out.write("</option>\n                \t\t\t\t");
      out.write("<option ");
      out.print("AES 128".equals(privproto) ? "SELECTED" : "");
      out.write(">AES 128");
      out.write("</option>\n                \t\t\t\t");
      out.write("<option ");
      out.print("AES 192".equals(privproto) ? "SELECTED" : "");
      out.write(">AES 192");
      out.write("</option>\n                \t\t\t\t");
      out.write("<option ");
      out.print("AES 256".equals(privproto) ? "SELECTED" : "");
      out.write(">AES 256");
      out.write("</option>\n            \t\t\t\t");
      out.write("</select>\n            \t\t\t");
      out.write("</td>                      \t             \t\t\n               \t\t");
      out.write("</tr> \n       \t\t\t");
      out.write("</table>\n\t\t\t");
      out.write("</div>              \t\t\n                           \n     \t\t");
      out.write("<!-- End of SNMP v3 OPTIONS --> \n       \n        \t");
      out.write("<!-- SNMP Submit button -->\n\t\t\t");
      out.write("<tr class=\"tableRowLight\">\n\t\t\t\t");
      out.write("<td class=\"tableText\" colspan=\"2\">\n             \t\t");
      out.write("<INPUT type=\"hidden\" name=\"button\" value=\"\">\n\t\t\t\t\t");
      out.write(
          "<INPUT type=\"image\" src=\"/wt-portal/images/buttons/btn_walk.gif\" onClick=\"document.snmpwalk.button.value='Walk'; return validateForm();\">\n       \t\t\t");
      out.write("</td>\n       \t\t");
      out.write("</tr>\n\t");

      if (lim != null) { // Check if license is not null
        if (lim.isValid()) { //  Check if license is valid
          if (((Boolean.valueOf(
                  lim.getFeature(com.websina.license.License.WT_SECURE_SNMPV3_ENABLED_FIELD_NAME)))
              .booleanValue())) { //  Check if feature is enabled
            if ((lim.daysLeft(com.websina.license.License.WT_SECURE_SNMPV3_EXPIRATION_FIELD_NAME)
                    > 0)
                || (lim.daysLeft(com.websina.license.License.WT_SECURE_SNMPV3_EXPIRATION_FIELD_NAME)
                    == -1)) { // Check if feature has expired (-1 indicates never expired)

              out.write("\t\t\n       \t\t");
              out.write("<!-- License valid, SNMPv3 enabled and expired -->\t\t\t\n       \t\t");
              out.write("<tr class=\"tableRowLight\">\n       \t\t\t");
              out.write("<td colspan=\"2\">");
              out.write(
                  "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"10\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
              out.write("</td>\n       \t\t");
              out.write("</tr>\n   ");
            } else {
              out.write("\n       \t\t");
              out.write("<!-- SNMPv3 enabled and expired -->\n       \t\t");
              out.write("<tr class=\"tableRowLight\">\n       \t\t\t");
              out.write("<td colspan=\"2\" class=\"tableText\">");
              out.write("<span class=\"error\">Access to SNMP v3 has expired.");
              out.write("</span>");
              out.write("<br>&nbsp;\n       \t\t\t");
              out.write("</td>\n\t\t\t");
              out.write("</tr>\n   ");
            }
          } else {
            out.write("\n       \t\t");
            out.write("<!-- License is valid, SNMPv3 is disabled -->\n       \t\t");
            out.write("<tr class=\"tableRowLight\">\n       \t\t\t");
            out.write("<td colspan=\"2\">");
            out.write(
                "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"10\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
            out.write("</td>\n       \t\t");
            out.write("</tr>\n     ");
          }
        }
      }
      out.write("    \n\n\t\t\t");
      out.write("</table>\n        ");
      out.write("<!-- END WALK SNMP TABLES -->\n        ");
      out.write("</td>               \n  \n        ");
      out.write("<td valign=\"top\">");
      out.write(
          "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"10\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
      out.write("</td>\n        ");
      out.write("<td valign=\"top\" bgcolor=\"#f0f0f0\">\n        ");
      out.write("<!-- BEGIN MIB TABLE -->\n            ");
      out.write(
          "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n                ");
      out.write("<tr class=\"tableHeader\">\n                    ");
      out.write("<td class=\"tableHeader\">View MIBs");
      out.write("</td>\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\">\n                    \t");
      out.write("<select name=mibs size=7>\n\t\t\t\t\t\t    ");

      if (vMibs != null) {
        for (int j = 0; j < vMibs.size(); j++) {

          out.print("<OPTION>" + (String) vMibs.get(j));
        }
      }

      out.write("\n\t\t\t\t\t    ");
      out.write("</select>\n                    ");
      out.write("</td>\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\">\n\t\t\t\t\t");
      out.write(
          "<INPUT type=\"image\" src=\"/wt-portal/images/buttons/btn_view_MIB.gif\" onClick=\"document.snmpwalk.button.value='View MIB'; return viewMIB();\">&nbsp;&nbsp;");
      out.write(
          "<INPUT type=\"image\" src=\"/wt-portal/images/buttons/btn_reload_MIB.gif\" onClick=\"document.snmpwalk.button.value='Reload MIBs';\">");
      out.write("</td>\n                ");
      out.write("</tr>\n            ");
      out.write("</table>\n        ");
      out.write("<!-- END MIB TABLE -->\n        ");
      out.write("</td>\n        \n        ");
      out.write("<td valign=\"top\">");
      out.write(
          "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"10\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
      out.write("</td>\n\t\t");
      out.write("<td valign=\"top\" bgcolor=\"#f0f0f0\">\n        ");
      out.write("<!-- BEGIN ASN TABLE -->\n            ");
      out.write(
          "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n                ");
      out.write("<tr class=\"tableHeader\">\n                    ");
      out.write("<td class=\"tableHeader\">Lookup ASN.1 Values By Name");
      out.write("</td>\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\">");
      out.write("<INPUT type=\"text\" name=\"desc\" value=\"");
      out.print(strDesc);
      out.write("\" size=\"30\" >");
      out.write("</td>\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\">");
      out.write("<textarea cols=\"30\" rows=\"5\">");
      out.print(strASN1);
      out.write("</textarea>");
      out.write("</td>\n                ");
      out.write("</tr>\n                ");
      out.write("<tr class=\"tableRowLight\">\n                    ");
      out.write("<td class=\"tableText\">\n\t                    ");
      out.write(
          "<INPUT type=\"image\" src=\"/wt-portal/images/buttons/btn_lookup.gif\" onClick=\"document.snmpwalk.button.value='lookup'; return validateLookup();\">\n                    ");
      out.write("</td>\n                ");
      out.write("</tr>\n            ");
      out.write("</table>");
      out.write("<BR>\n        ");
      out.write("<!-- END ASN TABLE -->\n        ");
      out.write("</td>        \n    \t");
      out.write("<td valign=\"top\">");
      out.write(
          "<img src=\"/wt-portal/images/spacers/spacer.gif\" height=\"10\" width=\"10\" border=\"0\" alt=\"WebTelemetry\">");
      out.write("</td>        \n    ");
      out.write("</tr>\n");
      out.write("</table>\n");
      out.write("</form>\n");
      out.write("<!-- BEGIN FRAMING TABLE:close tags-->\n\t\t");
      out.write("</td>\n\t");
      out.write("</tr>\n");
      out.write("</table>\n");
      out.write("<!-- END FRAMING TABLE:close tags-->   \n  ");
      out.write("</body>\n");
      out.write("</html>\n");
    } catch (Throwable t) {
      out = _jspx_out;
      if (out != null && out.getBufferSize() != 0) out.clearBuffer();
      if (pageContext != null) pageContext.handlePageException(t);
    } finally {
      if (_jspxFactory != null) _jspxFactory.releasePageContext(pageContext);
    }
  }