User 3898c01b63
25-01-2006 23:21:58
www.bindingDB.org uses JSP, together with marvin.js and JChemSearch to present chemical structures. Mol file is delivered with a string. Please refer to the following codes:
---codes fragment begin----
//check whether structures are duplicated in the DB
ConnectionHandler conHandler = new ConnectionHandler();
conHandler.setUrl(bundle.getString("URL"));
conHandler.setDriver(bundle.getString("driver"));
conHandler.setLoginName(bundle.getString("dbLogin"));
conHandler.setPassword(bundle.getString("dbPassword"));
conHandler.connect();
JChemSearch searcher = new JChemSearch();// Create searcher object
String molfile = request.getParameter("molfile");
searcher.setQueryStructure(molfile);
searcher.setConnectionHandler(conHandler);
searcher.setStructureTable("BIND_2000_05.MONOMER_STRUCT");
searcher.setWaitingForResult(true);
String SearchType = request.getParameter("SearchType");
int int_SearchType = Integer.parseInt(SearchType);
switch (int_SearchType) {
case 3:
String Similarity = request.getParameter("Similarity");
double dp_Similarity = atof(Similarity);
if (dp_Similarity > 1.0 || dp_Similarity < 0.0)
dp_Similarity = 0.8;
float ft_Similarity = (float) (1.0 - dp_Similarity);
searcher.setSearchType(JChemSearch.SIMILARITY);
searcher.setDissimilarityThreshold(ft_Similarity);
break;
case 4:
searcher.setSearchType(JChemSearch.EXACT);
break;
default:
break;
}
searcher.run();
---codes fragment end----
searcher.run(); works fine with IE, but for some molecules firefox does not work well.
The error message is
---Message begin---
chemaxon.formats.MolFormatException: java.io.IOException: file format not recognized
at chemaxon.util.MolHandler.toMolFormatException(MolHandler.java:667)
at chemaxon.util.MolHandler.importMol(MolHandler.java:655)
at chemaxon.util.MolHandler.setMolecule(MolHandler.java:162)
at chemaxon.jchem.db.JChemSearch.initQuery(JChemSearch.java:2458)
at chemaxon.jchem.db.JChemSearch.init(JChemSearch.java:2528)
at chemaxon.jchem.db.JChemSearch.search1(JChemSearch.java:1960)
at chemaxon.jchem.db.JChemSearch.search(JChemSearch.java:1862)
at chemaxon.jchem.db.JChemSearch.setRunning(JChemSearch.java:1740)
at chemaxon.jchem.db.JChemSearch.run(JChemSearch.java:1760)
at org.apache.jsp.bind.chemsearch.marvin.SearchMol_jsp._jspService(org.apache.jsp.bind.chemsearch.marvin.SearchMol_jsp:238)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
---Message end---
Thank you for the help.
---codes fragment begin----
//check whether structures are duplicated in the DB
ConnectionHandler conHandler = new ConnectionHandler();
conHandler.setUrl(bundle.getString("URL"));
conHandler.setDriver(bundle.getString("driver"));
conHandler.setLoginName(bundle.getString("dbLogin"));
conHandler.setPassword(bundle.getString("dbPassword"));
conHandler.connect();
JChemSearch searcher = new JChemSearch();// Create searcher object
String molfile = request.getParameter("molfile");
searcher.setQueryStructure(molfile);
searcher.setConnectionHandler(conHandler);
searcher.setStructureTable("BIND_2000_05.MONOMER_STRUCT");
searcher.setWaitingForResult(true);
String SearchType = request.getParameter("SearchType");
int int_SearchType = Integer.parseInt(SearchType);
switch (int_SearchType) {
case 3:
String Similarity = request.getParameter("Similarity");
double dp_Similarity = atof(Similarity);
if (dp_Similarity > 1.0 || dp_Similarity < 0.0)
dp_Similarity = 0.8;
float ft_Similarity = (float) (1.0 - dp_Similarity);
searcher.setSearchType(JChemSearch.SIMILARITY);
searcher.setDissimilarityThreshold(ft_Similarity);
break;
case 4:
searcher.setSearchType(JChemSearch.EXACT);
break;
default:
break;
}
searcher.run();
---codes fragment end----
searcher.run(); works fine with IE, but for some molecules firefox does not work well.
The error message is
---Message begin---
chemaxon.formats.MolFormatException: java.io.IOException: file format not recognized
at chemaxon.util.MolHandler.toMolFormatException(MolHandler.java:667)
at chemaxon.util.MolHandler.importMol(MolHandler.java:655)
at chemaxon.util.MolHandler.setMolecule(MolHandler.java:162)
at chemaxon.jchem.db.JChemSearch.initQuery(JChemSearch.java:2458)
at chemaxon.jchem.db.JChemSearch.init(JChemSearch.java:2528)
at chemaxon.jchem.db.JChemSearch.search1(JChemSearch.java:1960)
at chemaxon.jchem.db.JChemSearch.search(JChemSearch.java:1862)
at chemaxon.jchem.db.JChemSearch.setRunning(JChemSearch.java:1740)
at chemaxon.jchem.db.JChemSearch.run(JChemSearch.java:1760)
at org.apache.jsp.bind.chemsearch.marvin.SearchMol_jsp._jspService(org.apache.jsp.bind.chemsearch.marvin.SearchMol_jsp:238)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
---Message end---
Thank you for the help.