[Nmrshiftdb-devel] CVS: nmrshiftdb/src/java/org/openscience/nmrshiftdb/portlets SubmitPortlet.java,1
Brought to you by:
steinbeck
|
From: Stefan K. <sh...@us...> - 2002-03-06 16:47:49
|
Update of /cvsroot/nmrshiftdb/nmrshiftdb/src/java/org/openscience/nmrshiftdb/portlets In directory usw-pr-cvs1:/tmp/cvs-serv14015/src/java/org/openscience/nmrshiftdb/portlets Modified Files: SubmitPortlet.java Log Message: New version Index: SubmitPortlet.java =================================================================== RCS file: /cvsroot/nmrshiftdb/nmrshiftdb/src/java/org/openscience/nmrshiftdb/portlets/SubmitPortlet.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** SubmitPortlet.java 6 Mar 2002 16:41:16 -0000 1.8 --- SubmitPortlet.java 6 Mar 2002 16:47:46 -0000 1.9 *************** *** 2,7 **** --- 2,9 ---- import org.apache.jetspeed.portal.portlets.AbstractPortlet; + //import org.apache.jetspeed.om.dbpsml.*; import org.apache.turbine.util.RunData; import org.apache.turbine.util.db.*; + import org.apache.turbine.util.db.pool.*; import org.apache.ecs.ConcreteElement; import org.apache.ecs.StringElement; *************** *** 10,13 **** --- 12,16 ---- import org.apache.turbine.om.*; import org.apache.turbine.util.*; + import org.apache.turbine.services.db.*; import org.apache.torque.*; *************** *** 20,23 **** --- 23,28 ---- import org.openscience.cdk.*; import org.openscience.cdk.io.*; + import org.openscience.cdk.tools.*; + import org.openscience.cdk.fingerprint.*; import java.io.*; *************** *** 26,36 **** /** ! * Description of the Class * * @author Stefan Kuhn * @created 18. Februar 2002 */ ! public class SubmitPortlet extends AbstractPortlet ! { /** * Gets the content attribute of the ResultPortlet object --- 31,40 ---- /** ! * This is the portlet handlang submitting spectra/molecules... * * @author Stefan Kuhn * @created 18. Februar 2002 */ ! public class SubmitPortlet extends AbstractPortlet { /** * Gets the content attribute of the ResultPortlet object *************** *** 38,45 **** * @param runData Created by turbine * @return The content to be displayed as the portlet - * @since */ ! public ConcreteElement getContent(RunData runData) ! { HttpServletRequest req = runData.getRequest(); String action = req.getParameter("nmrshiftdbaction"); --- 42,47 ---- * @param runData Created by turbine * @return The content to be displayed as the portlet */ ! public ConcreteElement getContent(RunData runData) { HttpServletRequest req = runData.getRequest(); String action = req.getParameter("nmrshiftdbaction"); *************** *** 50,61 **** String returnValue = ""; //Create new SubmittingData object in case there is none in the session, i. e. no submission currently going on ! if (subData == null) ! { subData = new SubmittingData(); session.setAttribute("subData", subData); } //User submittet new values for the spectrum ! if (action != null && action.equals("submitSpectrumForAssignment")) ! { String spectrum = req.getParameter("spectrum") + '\n'; char[] charSpectrum = spectrum.toCharArray(); --- 52,61 ---- String returnValue = ""; //Create new SubmittingData object in case there is none in the session, i. e. no submission currently going on ! if (subData == null) { subData = new SubmittingData(); session.setAttribute("subData", subData); } //User submittet new values for the spectrum ! if (action != null && action.equals("submitSpectrumForAssignment")) { String spectrum = req.getParameter("spectrum") + '\n'; char[] charSpectrum = spectrum.toCharArray(); *************** *** 65,97 **** boolean addingShift = true; //The string is parsed ! for (int i = 0; i < charSpectrum.length; i++) ! { ! if (charSpectrum[i] == ';') ! { intensity = ""; addingShift = false; ! } ! else ! { ! if (charSpectrum[i] == '\n') ! { IntTriple figures = new IntTriple(); ! if (shift.trim() != "") ! { ! try ! { figures.value1 = (new Integer(shift.trim())).intValue(); ! if (intensity.trim() == "") ! { figures.value2 = 0; ! } ! else ! { figures.value2 = (new Integer(intensity.trim())).intValue(); } numberSpectrum.add(figures); ! } ! catch (NumberFormatException ex) ! { messages += "Your input included wrong characters!<br>"; } --- 65,85 ---- boolean addingShift = true; //The string is parsed ! for (int i = 0; i < charSpectrum.length; i++) { ! if (charSpectrum[i] == ';') { intensity = ""; addingShift = false; ! } else { ! if (charSpectrum[i] == '\n') { IntTriple figures = new IntTriple(); ! if (shift.trim() != "") { ! try { figures.value1 = (new Integer(shift.trim())).intValue(); ! if (intensity.trim() == "") { figures.value2 = 0; ! } else { figures.value2 = (new Integer(intensity.trim())).intValue(); } numberSpectrum.add(figures); ! } catch (NumberFormatException ex) { messages += "Your input included wrong characters!<br>"; } *************** *** 99,111 **** addingShift = true; } ! } ! else ! { ! if (addingShift) ! { shift = shift + charSpectrum[i]; ! } ! else ! { intensity = intensity + charSpectrum[i]; } --- 87,94 ---- addingShift = true; } ! } else { ! if (addingShift) { shift = shift + charSpectrum[i]; ! } else { intensity = intensity + charSpectrum[i]; } *************** *** 114,119 **** } //Values added to the signals table ! for (int i = 0; i < numberSpectrum.size(); i++) ! { subData.addToSignalstable(numberSpectrum.get(i)); } --- 97,101 ---- } //Values added to the signals table ! for (int i = 0; i < numberSpectrum.size(); i++) { subData.addToSignalstable(numberSpectrum.get(i)); } *************** *** 121,134 **** } //User submitted new assignments ! if (action != null && action.equals("submitAssignments")) ! { ! for (int i = 0; i < subData.getSignalstable().size(); i++) ! { ! if (req.getParameter("atomSelect" + i).equals("none")) ! { ((IntTriple) subData.getSignalstable().get(i)).value3 = -1; ! } ! else ! { ((IntTriple) subData.getSignalstable().get(i)).value3 = new Integer(req.getParameter("atomSelect" + i).trim()).intValue(); } --- 103,111 ---- } //User submitted new assignments ! if (action != null && action.equals("submitAssignments")) { ! for (int i = 0; i < subData.getSignalstable().size(); i++) { ! if (req.getParameter("atomSelect" + i).equals("none")) { ((IntTriple) subData.getSignalstable().get(i)).value3 = -1; ! } else { ((IntTriple) subData.getSignalstable().get(i)).value3 = new Integer(req.getParameter("atomSelect" + i).trim()).intValue(); } *************** *** 137,193 **** } //User submitted a molecule in marvin ! if (action != null && action.equals("submitMolecule")) ! { subData.setMolecule(req.getParameter("MolTxt")); returnValue = submitPage(messages, subData); } //User submitted the whole input ! if (action != null && action.equals("submitForConfirm")) ! { subData.setSolvent(req.getParameter("solvent")); subData.setChemName(req.getParameter("chemName")); String fieldStrengthStr = req.getParameter("fieldStrength"); String temperatureStr = req.getParameter("temperature"); ! try ! { int fieldStrength = Integer.parseInt(fieldStrengthStr); subData.setFieldStrength(fieldStrength); ! } ! catch (NumberFormatException ex) ! { messages += "Your field strength is not a decimal figure!"; } ! try ! { long temp = Long.parseLong(temperatureStr); subData.setTemperature(temp); ! } ! catch (NumberFormatException ex) ! { messages += "Your temperature is not a decimal figure!"; } ! if (messages == "") ! { //Show confirm screen returnValue = "Here the data should be reapeated!<form action=\"/jetspeed/portal/\" method=\"post\"><input type=\"hidden\" name=\"nmrshiftdbaction\" value=\"submitSpectrumForDB\"><input type=\"submit\" value=\"Write to Database\"></form>"; ! } ! else ! { //Display message and show input screen again returnValue = submitPage(messages, subData); } } ! //User submittet confirm screen ! if (action != null && action.equals("submitSpectrumForDB")) ! { ! //Log.debug(subData.getMolecule()); MDLReader mdlreader = new MDLReader(new StringReader(subData.getMolecule())); Molecule mol = new Molecule(); ! try ! { mol = (Molecule) mdlreader.read(new Molecule()); ! } ! catch (Throwable ex) ! { Log.debug("Fehler1: " + ex.getMessage()); StringWriter strWr = new StringWriter(); --- 114,157 ---- } //User submitted a molecule in marvin ! if (action != null && action.equals("submitMolecule")) { subData.setMolecule(req.getParameter("MolTxt")); returnValue = submitPage(messages, subData); } //User submitted the whole input ! if (action != null && action.equals("submitForConfirm")) { subData.setSolvent(req.getParameter("solvent")); subData.setChemName(req.getParameter("chemName")); + subData.setCasNumber(req.getParameter("casnumber")); + subData.setLiterature(req.getParameter("literature")); String fieldStrengthStr = req.getParameter("fieldStrength"); String temperatureStr = req.getParameter("temperature"); ! try { int fieldStrength = Integer.parseInt(fieldStrengthStr); subData.setFieldStrength(fieldStrength); ! } catch (NumberFormatException ex) { messages += "Your field strength is not a decimal figure!"; } ! try { long temp = Long.parseLong(temperatureStr); subData.setTemperature(temp); ! } catch (NumberFormatException ex) { messages += "Your temperature is not a decimal figure!"; } ! if (messages == "") { //Show confirm screen returnValue = "Here the data should be reapeated!<form action=\"/jetspeed/portal/\" method=\"post\"><input type=\"hidden\" name=\"nmrshiftdbaction\" value=\"submitSpectrumForDB\"><input type=\"submit\" value=\"Write to Database\"></form>"; ! } else { //Display message and show input screen again returnValue = submitPage(messages, subData); } } ! //User submitted confirm screen ! if (action != null && action.equals("submitSpectrumForDB")) { ! DBConnection dbconn=null; MDLReader mdlreader = new MDLReader(new StringReader(subData.getMolecule())); Molecule mol = new Molecule(); ! try { mol = (Molecule) mdlreader.read(new Molecule()); ! } catch (Throwable ex) { Log.debug("Fehler1: " + ex.getMessage()); StringWriter strWr = new StringWriter(); *************** *** 197,275 **** } //Add molecule to DB ! try ! { ! //Torque.init("/usr/local/jakarta-tomcat-3.3a/webapps/jetspeed/WEB-INF/conf/Torque.properties"); ! org.apache.turbine.util.db.pool.DBConnection dbconn = org.apache.turbine.services.db.TurbineDB.getConnection(); System.err.println(dbconn); Criteria crit = new Criteria(); DBMolecule mol2 = new DBMolecule(); ! mol2.setDate(new Date()); ! //mol2.save(); ! //crit.add(DBMoleculePeer.SERIALIZED_MOLECULE,"serializeObject(mol)"); ! //crit.add(DBMoleculePeer.DATE,(java.sql.Date)new java.util.Date()); ! //crit.add(DBMoleculePeer.CAS_NUMBER,45); mol2.save(dbconn); ! System.err.println("juhu"); ! NumberKey nkMol = new NumberKey(); Log.debug("after insert molecule"); //Add chemical name to DB ! crit = new Criteria(); ! crit.add(DBChemicalNamePeer.MOLECULE_ID, nkMol.getValue()); ! crit.add(DBChemicalNamePeer.NAME, subData.getChemName()); //Add spectrum to DB ! crit = new Criteria(); ! crit.add(DBSpectrumPeer.MOLECULE_ID, nkMol.getValue()); ! crit.add(DBSpectrumPeer.REVIEW_FLAG, 'n'); ! NumberKey nkSpectrum = (NumberKey) DBSpectrumPeer.doInsert(crit); //Add atoms to db Atom[] atoms = mol.getAtoms(); NumberKey[] nkAtom = new NumberKey[atoms.length]; ! for (int i = 0; i < atoms.length; i++) ! { crit = new Criteria(); ! crit.add(DBAtomPeer.SYMBOL, atoms[i].getSymbol()); ! crit.add(DBAtomPeer.SERIALIZED_ATOM, serializeObject(atoms[i])); ! crit.add(DBAtomPeer.MOLECULE_ID, nkMol.getValue()); ! nkAtom[i] = (NumberKey) DBAtomPeer.doInsert(crit); } //Add bonds to db Bond[] bonds = mol.getBonds(); NumberKey[] nkBond = new NumberKey[bonds.length]; ! for (int i = 0; i < bonds.length; i++) ! { crit = new Criteria(); ! crit.add(DBBondPeer.DEGREE, bonds[i].getOrder()); ! crit.add(DBBondPeer.SERIALIZED_BOND, serializeObject(bonds[i])); ! crit.add(DBBondPeer.MOLECULE_ID, nkMol.getValue()); ! nkBond[i] = (NumberKey) DBBondPeer.doInsert(crit); //Add bonds-atoms relationship to DB Atom[] neighbourAtoms = bonds[i].getAtoms(); ! for (int k = 0; k < neighbourAtoms.length; k++) ! { ! crit = new Criteria(); ! crit.add(DBBondDBAtomPeer.BOND_ID, nkBond[i].getValue()); ! crit.add(DBBondDBAtomPeer.ATOM_ID, nkAtom[mol.getAtomNumber(neighbourAtoms[k])].getValue()); ! Object o = DBBondDBAtomPeer.doInsert(crit); } } //add signals to DB NumberKey[] nkSignal = new NumberKey[subData.getSignalstable().size()]; ! for (int i = 0; i < subData.getSignalstable().size(); i++) ! { ! crit = new Criteria(); ! crit.add(DBSignalPeer.DIMENSIONALITY, 1); ! crit.add(DBSignalPeer.SHIFT_1, ((IntTriple) subData.getSignalstable().get(i)).value1); ! crit.add(DBSignalPeer.SPECTRUM_ID, nkSpectrum.getValue()); ! //The serialized signal is not used at the moment //Intensity still missing ! //crit.add(SignalPeer.INTENSITY,((IntTriple)subData.getSignalstable[i]).value2); ! nkSignal[i] = (NumberKey) DBSignalPeer.doInsert(crit); ! crit = new Criteria(); ! crit.add(DBSignalDBAtomPeer.SIGNAL_ID, nkSignal[i].getValue()); ! crit.add(DBSignalDBAtomPeer.ATOM_ID, nkAtom[((IntTriple) subData.getSignalstable().get(i)).value3].getValue()); ! NumberKey nk = (NumberKey) DBSignalDBAtomPeer.doInsert(crit); } } ! catch (Exception ex) ! { Log.debug("Fehler2: " + ex.getMessage()); StringWriter strWr = new StringWriter(); --- 161,282 ---- } //Add molecule to DB ! try { ! dbconn=TurbineDB.getConnection();//save is not working without giving the connection explicitly System.err.println(dbconn); Criteria crit = new Criteria(); + Date now=new Date(); DBMolecule mol2 = new DBMolecule(); ! mol2.setDate(now); ! mol2.setStructureFile(subData.getMolecule().getBytes()); ! mol2.setMolecularFormula(new MFAnalyser(mol).getMolecularFormula()); ! mol2.setSerializedMolecule(XMLTools.getAsXMLString(mol)); ! mol2.setCasNumber(subData.getCasNumber()); ! mol2.setNmrshiftdbNumber("test3");//not yet final ! mol2.setMolecularWeight(new MFAnalyser(mol).getMass()); ! mol2.setFingerprint(subData.getMolecule().getBytes());//Fingerprinter.getFingerprint(mol)); ! NmrshiftdbUser user=(NmrshiftdbUser)runData.getUser(); ! mol2.setUserId((NumberKey)user.getPrimaryKey()); mol2.save(dbconn); ! crit.add(DBMoleculePeer.DATE,now); ! NumberKey nkMol=(NumberKey)((DBMolecule)DBMoleculePeer.doSelect(crit,dbconn).get(0)).getPrimaryKey(); Log.debug("after insert molecule"); //Add chemical name to DB ! DBChemicalName chemName=new DBChemicalName(); ! chemName.setMoleculeId(nkMol); ! chemName.setName(subData.getChemName()); ! chemName.save(dbconn); ! Log.debug("after insert chemName"); ! //Add measurement conditions to db ! DBMeasurementCondition conds=new DBMeasurementCondition(); ! conds.setTemperature(subData.getTemperature()); ! conds.setFieldStrength(subData.getFieldStrength()); ! conds.setSolvent(subData.getSolvent()); ! conds.setUserId((NumberKey)user.getPrimaryKey()); ! conds.save(dbconn); ! crit=new Criteria(); ! NumberKey nkCond=(NumberKey)((DBMeasurementCondition)DBMeasurementConditionPeer.doSelect(crit,dbconn).get(DBMeasurementConditionPeer.doSelect(crit,dbconn).size()-1)).getPrimaryKey();//Always takes the PK with the highist number, not sure if it works, but found no other way to get the PK of the last inserted row ! Log.debug("after insert conditions"); //Add spectrum to DB ! DBSpectrum spectrum=new DBSpectrum(); ! spectrum.setDate(now); ! spectrum.setReviewFlag("false"); ! spectrum.setLiterature(subData.getLiterature()); ! spectrum.setMoleculeId(nkMol); ! spectrum.setUserId((NumberKey)user.getPrimaryKey()); ! spectrum.setFingerprint(subData.getMolecule().getBytes());//not yet final ! spectrum.setSpectrumTypeId(new NumberKey(12));//not yet final ! spectrum.setMeasurementConditionId(nkCond); ! spectrum.setSerializedSpectrum(XMLTools.getAsXMLString(spectrum));//really this? ! spectrum.setSpecfile(new String("test").getBytes());//Not yet final ! spectrum.save(dbconn); ! crit=new Criteria(); ! crit.add(DBSpectrumPeer.DATE,now); ! NumberKey nkSpec=(NumberKey)((DBSpectrum)DBSpectrumPeer.doSelect(crit,dbconn).get(0)).getPrimaryKey(); ! Log.debug("after insert spectrum"); //Add atoms to db Atom[] atoms = mol.getAtoms(); + System.err.println("atome: "+atoms.length); NumberKey[] nkAtom = new NumberKey[atoms.length]; ! for (int i = 0; i < atoms.length; i++) { ! DBAtom atom=new DBAtom(); ! atom.setSymbol(atoms[i].getSymbol()); ! atom.setMoleculeId(nkMol); ! atom.setSerializedAtom(XMLTools.getAsXMLString(atoms[i])); ! atom.save(dbconn); crit = new Criteria(); ! nkAtom[i] = (NumberKey)((DBAtom)DBAtomPeer.doSelect(crit,dbconn).get(DBAtomPeer.doSelect(crit,dbconn).size()-1)).getPrimaryKey();//same problem to find the last inserted row } + Log.debug("after insert atoms"); //Add bonds to db Bond[] bonds = mol.getBonds(); NumberKey[] nkBond = new NumberKey[bonds.length]; ! for (int i = 0; i < bonds.length; i++) { ! DBBond bond=new DBBond(); ! bond.setDegree(new Double(bonds[i].getOrder()).intValue()); ! bond.setSerializedBond(XMLTools.getAsXMLString(bonds[i])); ! bond.setMoleculeId(nkMol); ! bond.save(dbconn); crit = new Criteria(); ! nkBond[i] = (NumberKey)((DBBond)DBBondPeer.doSelect(crit,dbconn).get(DBBondPeer.doSelect(crit,dbconn).size()-1)).getPrimaryKey();//same problem to find the last inserted row //Add bonds-atoms relationship to DB Atom[] neighbourAtoms = bonds[i].getAtoms(); ! for (int k = 0; k < neighbourAtoms.length; k++) { ! DBBondDBAtom bondAtom=new DBBondDBAtom(); ! Log.debug(i+". bond, "+k+". nachbaratom, pk von bond:"+nkBond[i].getValue()+", pk von atom:"+nkAtom[mol.getAtomNumber(neighbourAtoms[k])].getValue()); ! /*bondAtom.setBondId(nkBond[i]); ! bondAtom.setAtomId(nkAtom[mol.getAtomNumber(neighbourAtoms[k])]); ! bondAtom.save(dbconn);*/ ! crit=new Criteria(); ! crit.add(DBBondDBAtomPeer.ATOM_ID,nkAtom[mol.getAtomNumber(neighbourAtoms[k])].getValue()); ! crit.add(DBBondDBAtomPeer.BOND_ID,nkBond[i].getValue()); ! DBBondDBAtomPeer.doInsert(crit,dbconn); ! Log.debug("saved"); } } + Log.debug("after insert bonds"); //add signals to DB NumberKey[] nkSignal = new NumberKey[subData.getSignalstable().size()]; ! for (int i = 0; i < subData.getSignalstable().size(); i++) { ! DBSignal signal=new DBSignal(); ! signal.setDimensionality(1); ! signal.setShift1(((IntTriple) subData.getSignalstable().get(i)).value1); ! signal.setIntensity(((IntTriple) subData.getSignalstable().get(i)).value2); ! signal.setSpectrumId(nkSpec); ! signal.setShift2(0);//Not used at the moment ! signal.setShift3(0); ! signal.setShift4(0); ! signal.setShift5(0); ! signal.setSerializedSignal(XMLTools.getAsXMLString("signal"));//not yet final ! signal.save(dbconn); ! crit=new Criteria(); ! nkSignal[i] = (NumberKey)((DBSignal)DBSignalPeer.doSelect(crit,dbconn).get(DBSignalPeer.doSelect(crit,dbconn).size()-1)).getPrimaryKey();//same problem to find the last inserted row ! DBSignalDBAtom signalAtom=new DBSignalDBAtom(); ! signalAtom.setSignalId(nkSignal[i]); ! signalAtom.setAtomId(new String(""+((IntTriple)subData.getSignalstable().get(i)).value3)); ! signalAtom.save(dbconn); } + Log.debug("after insert signals"); } ! catch (Exception ex) { Log.debug("Fehler2: " + ex.getMessage()); StringWriter strWr = new StringWriter(); *************** *** 278,286 **** Log.debug(strWr.toString()); } session.removeAttribute("subData"); ! returnValue = "Your spectrum has been submitted and will be reviewed shortly! Thanks for your contribution! For a new submit <a heref=\"http://localhost:8080/jetspeed/portal/pane0/Submit\">click here</a>"; } ! if (action == null) ! { returnValue = submitPage(messages, subData); } --- 285,301 ---- Log.debug(strWr.toString()); } + + finally{ + try{ + TurbineDB.releaseConnection(dbconn); + } + catch (Exception e){ + Log.debug("Error releasing connection: "+e.getMessage()); + } + } session.removeAttribute("subData"); ! returnValue = "Your spectrum has been submitted and will be reviewed shortly! Thanks for your contribution! For a new submit <a href=\"http://localhost:8080/jetspeed/portal/pane0/Submit\">click here</a>"; } ! if (action == null) { returnValue = submitPage(messages, subData); } *************** *** 294,314 **** * @param o The object to be serialized * @return The serialized object - * @since */ ! private String serializeObject(Object o) ! { StringWriter strWriter = new StringWriter(); ! try ! { ObjOut out = new ObjOut(false, strWriter); out.writeObject(o); ! } ! catch (IOException ex) ! { ! System.out.println(ex.getMessage()); } return (strWriter.toString()); ! } ! /** --- 309,324 ---- * @param o The object to be serialized * @return The serialized object */ ! /*private String serializeObject(Object o) { StringWriter strWriter = new StringWriter(); ! try { ObjOut out = new ObjOut(false, strWriter); out.writeObject(o); ! } catch (IOException ex) { ! System.err.println("Fehler bei Serialisierung: "+ex.getMessage()); } return (strWriter.toString()); ! }*/ ! /** *************** *** 318,334 **** * @param subData submittingData object from session * @return The content to be displayed as the portlet - * @since */ ! private String submitPage(String messages, SubmittingData subData) ! { String returnValue = ""; int tableSize; //the number of rows the table for the assignments will have (10 is minimum) ! if (subData.getSignalstable().size() < 10) ! { tableSize = 10; ! } ! else ! { tableSize = subData.getSignalstable().size() + 2; } --- 328,339 ---- * @param subData submittingData object from session * @return The content to be displayed as the portlet */ ! private String submitPage(String messages, SubmittingData subData) { String returnValue = ""; int tableSize; //the number of rows the table for the assignments will have (10 is minimum) ! if (subData.getSignalstable().size() < 10) { tableSize = 10; ! } else { tableSize = subData.getSignalstable().size() + 2; } *************** *** 365,380 **** //The mol is put into the MView applet via a file (Problem: If two people write at the same time, the files are messed up) File outputFile = new File("/usr/local/jakarta-tomcat-3.3a/webapps/jetspeed/nmrshiftdb/temp.mol"); ! try ! { FileWriter out = new FileWriter(outputFile); out.write(subData.getMolecule()); out.close(); ! } ! catch (Exception e) ! { System.out.println(e.getMessage()); } ! if (!subData.getMolecule().equals("")) ! { returnValue += "mview_param(\"mol\",\"temp.mol\");\n"; } --- 370,381 ---- //The mol is put into the MView applet via a file (Problem: If two people write at the same time, the files are messed up) File outputFile = new File("/usr/local/jakarta-tomcat-3.3a/webapps/jetspeed/nmrshiftdb/temp.mol"); ! try { FileWriter out = new FileWriter(outputFile); out.write(subData.getMolecule()); out.close(); ! } catch (Exception e) { System.out.println(e.getMessage()); } ! if (!subData.getMolecule().equals("")) { returnValue += "mview_param(\"mol\",\"temp.mol\");\n"; } *************** *** 390,412 **** returnValue += tableSize + "\" valign=\"bottom\">Enter one shift per line, the intensity<br>(optional) seperated by ;<br>like<br>56;4<br>64;6<br><form action=\"/jetspeed/portal/\" name=\"spectrumForm\" method=\"post\"><input type=\"hidden\" name=\"nmrshiftdbaction\" value=\"submitSpectrumForAssignment\"><textarea name=\"spectrum\" cols=\"10\" rows=\"10\"></textarea><br><input type=\"submit\" value=\"Submit the Spectrum\"></form></td></tr>"; returnValue += "<form action=\"/jetspeed/portal/\" method=\"post\"><input type=\"hidden\" name=\"nmrshiftdbaction\" value=\"submitAssignments\">"; ! for (int i = 0; i < subData.getSignalstable().size(); i++) ! { returnValue += "<tr><td><select name=\"atomSelect" + i + "\" size=\"1\" onChange=\"unselectandselect(this.value)\">"; ! if (((IntTriple) subData.getSignalstable().get(i)).value3 == -1) ! { returnValue += "<OPTION SELECTED>none</option>"; ! } ! else ! { returnValue += "<OPTION>none</option>"; } ! for (int k = 0; k < subData.getSignalstable().size(); k++) ! { ! if (k == ((IntTriple) subData.getSignalstable().get(i)).value3) ! { returnValue += "<option selected>" + (k) + "</option>"; ! } ! else ! { returnValue += "<option>" + (k) + "</option>"; } --- 391,405 ---- returnValue += tableSize + "\" valign=\"bottom\">Enter one shift per line, the intensity<br>(optional) seperated by ;<br>like<br>56;4<br>64;6<br><form action=\"/jetspeed/portal/\" name=\"spectrumForm\" method=\"post\"><input type=\"hidden\" name=\"nmrshiftdbaction\" value=\"submitSpectrumForAssignment\"><textarea name=\"spectrum\" cols=\"10\" rows=\"10\"></textarea><br><input type=\"submit\" value=\"Submit the Spectrum\"></form></td></tr>"; returnValue += "<form action=\"/jetspeed/portal/\" method=\"post\"><input type=\"hidden\" name=\"nmrshiftdbaction\" value=\"submitAssignments\">"; ! for (int i = 0; i < subData.getSignalstable().size(); i++) { returnValue += "<tr><td><select name=\"atomSelect" + i + "\" size=\"1\" onChange=\"unselectandselect(this.value)\">"; ! if (((IntTriple) subData.getSignalstable().get(i)).value3 == -1) { returnValue += "<OPTION SELECTED>none</option>"; ! } else { returnValue += "<OPTION>none</option>"; } ! for (int k = 0; k < subData.getSignalstable().size(); k++) { ! if (k == ((IntTriple) subData.getSignalstable().get(i)).value3) { returnValue += "<option selected>" + (k) + "</option>"; ! } else { returnValue += "<option>" + (k) + "</option>"; } *************** *** 415,422 **** } returnValue += "<tr><td colspan=\"3\" valign=\"bottom\"><input type=\"submit\" value=\"Submit assignments\"></td></tr></form>"; ! returnValue += "</table><br><form action=\"/jetspeed/portal/\" method=\"post\"><input type=\"hidden\" name=\"nmrshiftdbaction\" value=\"submitForConfirm\"><center>Chemical name:<input type=\"text\" name=\"chemName\"></center><br><center>Measurement conditions - temperature (in <sup>0</sup>K):<input type=\"text\" name=\"temperature\"> -Field strength:<input type=\"text\" name=\"fieldStrength\"> -Solvent:<input type=\"text\" name=\"solvent\"></center><br><center><input type=\"submit\" value=\"Write to Database\"></center></form>"; return (returnValue); } } - - --- 408,413 ---- } returnValue += "<tr><td colspan=\"3\" valign=\"bottom\"><input type=\"submit\" value=\"Submit assignments\"></td></tr></form>"; ! returnValue += "</table><br><form action=\"/jetspeed/portal/\" method=\"post\"><input type=\"hidden\" name=\"nmrshiftdbaction\" value=\"submitForConfirm\"><center>Chemical name:<input type=\"text\" name=\"chemName\">CAS Number:<input type=\"text\" name=\"casnumber\">Literature:<input type=\"text\" name=\"literature\"></center><br><center>Measurement conditions - temperature (in <sup>0</sup>K):<input type=\"text\" name=\"temperature\"> -Field strength:<input type=\"text\" name=\"fieldStrength\"> -Solvent:<input type=\"text\" name=\"solvent\"></center><br><center><input type=\"submit\" value=\"Write to Database\"></center></form>"; return (returnValue); } } |