Issue after server upgrade to R8

We recently upgraded servers from R6.5 to R8.0

We get the following error:

09/03/2008 02:20:43 PM HTTP JVM: Exception in thread “Launcher: JavaAgent”

09/03/2008 02:20:43 PM HTTP JVM: java.lang.NoClassDefFoundError: com.ibm.xml.parsers.NonValidatingDOMParser

09/03/2008 02:20:43 PM HTTP JVM: at java.lang.J9VMInternals.verifyImpl(Native Method)

09/03/2008 02:20:43 PM HTTP JVM: at java.lang.J9VMInternals.verify(J9VMInternals.java:68)

09/03/2008 02:20:43 PM HTTP JVM: at java.lang.J9VMInternals.initialize(J9VMInternals.java:129)

09/03/2008 02:20:43 PM HTTP JVM: at java.lang.Class.newInstanceImpl(Native Method)

09/03/2008 02:20:43 PM HTTP JVM: at java.lang.Class.newInstance(Class.java:1300)

09/03/2008 02:20:43 PM HTTP JVM: at lotus.domino.AgentInfo.newInstance(Unknown Source)

09/03/2008 02:20:43 PM HTTP JVM: at lotus.domino.AgentLauncher.run(Unknown Source)

09/03/2008 02:20:43 PM HTTP JVM: at lotus.domino.NotesThread.run(Unknown Source)

When the following agent runs:

import lotus.domino.*;

import java.io.PrintWriter;

import java.io.StringReader;

import java.util.Vector;

import org.w3c.dom.*;

import org.xml.sax.InputSource;

public class JavaAgent extends AgentBase {

private Session ssn;

private Vector vAllObjects = new Vector();



public void NotesMain() {



	try {

		// Get the current database and current document

		ssn = getSession();

		AgentContext ac = ssn.getAgentContext();

		vAllObjects.addElement(ac);

		Database dbCurrent = ac.getCurrentDatabase();

		vAllObjects.addElement(dbCurrent);

		lotus.domino.Document docContext = ac.getDocumentContext();

		vAllObjects.addElement(docContext);

		PrintWriter out = getAgentOutput();



		// Get the variables

		String sRC = docContext.getItemValueString("Request_Content");

		int iPos2 = sRC.lastIndexOf("~");

		int iPos = sRC.lastIndexOf("~",iPos2-1);

		String sKey = sRC.substring(0,iPos);

		double dDollar = Double.valueOf(sRC.substring(iPos+1,iPos2)).doubleValue();

		String sCreditType = sRC.substring(iPos2 + 1);



		// Get a collection of documents for the specified group

		View vwLookup = dbCurrent.getView("vwLGRPR");

		vAllObjects.addElement(vwLookup);

		DocumentCollection colGroups = vwLookup.getAllDocumentsByKey(sKey);

		if(colGroups.getCount() == 0)

			return;  // nothing to process

				

		// Get the correct document

		lotus.domino.Document docGroup = colGroups.getFirstDocument();

		while(docGroup != null) {

			double dMin = new Double(docGroup.getItemValueDouble("Group_Min")).doubleValue();

			if(dDollar >= dMin) {

				double dMax = new Double(docGroup.getItemValueDouble("Group_Max")).doubleValue();

				if(dMax == 0.0)

					break;

				if(dDollar <= dMax)

					break;

			}

			docGroup = colGroups.getNextDocument(docGroup);

		}

		

		// Get the xml information

		String sXML = docGroup.getItemValueString("AppGrpIslandData");

		com.ibm.xml.parsers.DOMParser parser = new com.ibm.xml.parsers.DOMParser();

		parser.parse(new InputSource(new StringReader(sXML)));

		org.w3c.dom.Document xmlDoc = parser.getDocument();

		Element eleRoot = xmlDoc.getDocumentElement();

		

		// Add the information

		boolean bAddFlag = false;

		boolean bFirstFlag = true;

		NodeList nl = eleRoot.getElementsByTagName("approver_name");

		if (nl.getLength() > 0) {

			out.println("<div>");

			for(int x = 0; x < nl.getLength(); x++) {

				Node nodeName = nl.item(x);

				// Check if there is an include only code

				Node nodeInc = nodeName.getNextSibling();

				if(nodeInc.getFirstChild() != null) {

					String sIncCode = nodeInc.getFirstChild().getNodeValue();

					iPos = sIncCode.indexOf(sCreditType);

					if(iPos != -1)

						bAddFlag = true;

				} else {

					// Check if there is an exclude code

					Node nodeExc = nodeInc.getNextSibling();

					if(nodeExc.getFirstChild() == null) {

						bAddFlag = true;

					} else {

						String sExcCode = nodeExc.getFirstChild().getNodeValue();

						iPos = sExcCode.indexOf(sCreditType);

						if(iPos == -1)

							bAddFlag = true;

					}

				}

				if(bAddFlag) {

					if(bFirstFlag) {

						out.println(nodeName.getFirstChild().getNodeValue());

						bFirstFlag = false;

					} else {

						out.println("," + nodeName.getFirstChild().getNodeValue());

					}

				}

			}

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

		}

	} catch(Exception e) {

		e.printStackTrace();

	} finally {  // Clean-up

		try {

			ssn.recycle(vAllObjects); 

			ssn.recycle();

			System.runFinalization();

			System.gc();

		} catch (Exception e) {

			e.printStackTrace();

		} // end try

	}

}

}

Any thoughts on a solution will be greatly appreciated.