import java.io.PrintWriter; import java.io.IOException; import java.sql.SQLException; import javax.naming.NamingException; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.zucchetti.sitepainter.SPPrxycizer; public class SPServerTestConnection extends SPServlet implements SPInvokable { static public class ServletStatus extends SPPageServletStatus { } public void init(ServletConfig config) throws ServletException { super.init(config); entityGlobals.name = "SPServerTestConnection"; } public void doProcess(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { ServletStatus status = new ServletStatus(); SPParameterSource source = SPLib.GetSource(request); status.context = SPLib.GetContext(SPLib.GetContextID(request), request); status.m_cTheme = SPLib.GetTheme(status.context); status.m_cBrowser = SPLib.GetBrowser(request); SPLib.SetContentType(response); status.out=response.getWriter(); String ODBCDataSource = source.GetParameter("ODBCDataSource",""); String DatabaseTypeString = source.GetParameter("DatabaseTypeString",""); status.out.println(""); status.out.println(""); status.out.println(""); status.out.println(""); status.out.println(""); String l_cJsUid = SPPrxycizer.proxycizedPath(status.m_cTheme+"/styleVariables.js"); status.out.println(""); l_cJsUid = SPPrxycizer.proxycizedPath(status.m_cTheme+"/calendar"+(SPLib.IsMobile(request)?".mobile":"")+".js"); status.out.println( "" + ""); l_cJsUid = SPPrxycizer.proxycizedPath(status.m_cTheme+"/calculator"+(SPLib.IsMobile(request)?".mobile":"")+".js"); status.out.println( "" + ""); status.out.println(""); status.out.println(""); status.out.println(""+status.context.Translate("MSG_SERVER_TEST_CONNECTION")+""); status.out.println(""); status.out.println(""); if (!CPLib.IsAdministrator(status.context) && status.context.HasAdministeredUsers()) { status.out.println("

"); status.out.println(status.context.Translate("MSG_ACC_NOT_ALLOWED")); status.out.println("

"); } else { status.out.println("
"); status.out.println("

"); status.out.println(""); try { CPPooler.LoadDBDriver(DatabaseTypeString, ODBCDataSource); StringBuffer l_srv=new StringBuffer(ODBCDataSource), l_u=new StringBuffer(), l_p=new StringBuffer(); CPPooler.CookDatasource(l_srv,l_u,l_p,false); CPPooler.GetConnFromSrv(l_srv.toString(),l_u.toString(),l_p.toString()).close(); status.out.println(status.context.Translate("MSG_SERVER_CONNECTION_OK")); status.out.println("

"); } catch (SQLException e) { status.out.println(status.context.Translate("MSG_SERVER_CONNECTION_ERROR")); status.out.println("


"); status.out.println("

"); status.out.println(status.context.Translate("MSG_LOOK_INTO_COUNTERS")); CPStdCounter.Error(new CPWarningError(e)); status.out.println("

"); } catch (NamingException e) { status.out.println(status.context.Translate("MSG_SERVER_CONNECTION_ERROR")); status.out.println("


"); status.out.println("

"); status.out.println(status.context.Translate("MSG_LOOK_INTO_COUNTERS")); status.out.println("

"); CPStdCounter.Error(new CPWarningError(e)); } status.out.println("
"); status.out.println(""); status.out.println("
"); } status.out.println(""); status.out.println(""); } }