|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.velocityweb.controller.Controller
controller base class, should be customized for each project
Field Summary | |
protected java.lang.String |
dbCharsetName
|
protected java.lang.String |
defaultHtmlTemplateFileName
|
protected java.lang.String |
outputHtmlCharsetName
|
Constructor Summary | |
Controller()
|
Method Summary | |
boolean |
checkDatabaseConnectionPerRequest()
check database connection per web request, return false if check fail. |
BatchJobAppContext |
createBatchJobAppContext(int transactionIsolation,
java.util.Map context,
java.util.ResourceBundle resourceBundle)
create application context for each task, should be customized for each project if need |
WebAppContext |
createWebAppContext(int transactionIsolation,
java.util.Map context,
java.util.ResourceBundle resourceBundle,
Controller controller)
create application context for each web request, should be customized for each project |
void |
destroyApplication()
destroy application when web server stopped |
java.lang.String |
getAppExceptionTemplateFileName()
get template file name of exception |
java.lang.String |
getDatabaseConnectFailErrorMessage()
get message for database connect fail, must be overrided |
protected abstract java.lang.Object |
getDataSource()
get Datasource, must be override |
java.lang.String |
getDbCharsetName()
get database charset name, this is for web validation for input string length |
java.lang.String |
getDefaultHtmlTemplateFileName()
get home page template file name |
java.lang.String |
getDispatchFailMessageListTag()
get fail message tag in template file |
java.lang.String |
getDispatchFailTemplateFileName()
get template file name for "not find url you requested" |
java.lang.String |
getDispatchSuccessJumpUrlTag()
get success forward tag in template file |
java.lang.String |
getDispatchSuccessMessageTag()
get success message tag in template file |
java.lang.String |
getDispatchSuccessStaySecondsTag()
get "dispath success stay seconds" tag name in template file |
java.lang.String |
getDispatchSuccessTemplateFileName()
get update/delete success message template file name |
java.lang.String |
getDispatchTargetUrlTag()
get dispatch target URL tag, for update/delete, these kind of request has same result pages, that is success or fail page, but different process logic |
LeafDispatcher |
getHomeDispatcher(javax.servlet.http.HttpServletRequest request)
get home page dispatcher, if logined, return loginedHomeDispatcher, else unloginedHomeDispatcher |
LeafDispatcher |
getLoginDispatcher()
get login page dispatcher |
LeafDispatcher |
getLoginedHomeDispatcher()
get logined home page URL |
LeafDispatcher |
getNoRightDispatcher()
get URL for when no access right,normally pages of "You have no right to access page" |
java.lang.String |
getOutputHtmlCharsetName()
|
java.util.ResourceBundle |
getResourceBundle(javax.servlet.http.HttpServletRequest request)
get resource bundle, must override this if need multi-language support |
java.lang.Object |
getSessionUser(javax.servlet.http.HttpServletRequest request)
get logined user information in HTTP session |
abstract java.lang.String |
getTemplateRootFolder(javax.servlet.ServletConfig config)
get template root folder, can be a URL in .war/.ear file, or folder outside .war/.ear file |
abstract TemplateWrapper |
getTemplateWrapper()
get template web wrapper, can be VelocityTemplateWebWrapper or FreemarkerTemplateWebWrapper |
LeafDispatcher |
getUnloginedHomeDispatcher()
get un-logined home page URL |
boolean |
hasAccessRight(LeafDispatcher leafDispatcher,
javax.servlet.http.HttpServletRequest request)
check if user has access right, based on request URL |
boolean |
hasLogined(javax.servlet.http.HttpServletRequest request)
check if user has logined |
void |
initAppExceptionPage(java.util.Map context,
java.lang.Throwable error)
init exception page, normally translate exception message to be showed on pages |
boolean |
initApplication()
init application when web server started, must be overrided |
boolean |
isDbDuplicateException(java.lang.Throwable t)
check if framework catch un-handle exception, it is data duplicate? must be translate to well-read message |
boolean |
isNewDispatchInstancePerRequest()
create new dispatch instance per request? |
boolean |
needLogin(LeafDispatcher leafDispatcher,
javax.servlet.http.HttpServletRequest request)
check if the specified URL can be accessed without login, must be override |
void |
onAfterUseConnection(java.sql.Connection con)
callback event, after use connection |
void |
onBeforeUseConnection(java.sql.Connection con)
callback event, before use connection |
LeafDispatcher |
processCheck(LeafDispatcher leafDispatcher,
javax.servlet.http.HttpServletRequest request)
process check, check login, check access right |
void |
setAppExceptionTemplateFileName(java.lang.String appExceptionTemplateFileName)
set template file name of exception |
void |
setDbCharsetName(java.lang.String dbCharsetName)
set database charset name, this is for web validation for input string length |
void |
setDefaultHtmlTemplateFileName(java.lang.String defaultHtmlTemplateFileName)
set home page template file name |
void |
setDispatchFailMessageListTag(java.lang.String dispatchFailMessageListTag)
set fail message tag in template file, must be called |
void |
setDispatchFailTemplateFileName(java.lang.String dispatchFailTemplateFileName)
set template file name for "not find url you requested" |
void |
setDispatchSuccessJumpUrlTag(java.lang.String dispatchSuccessJumpUrlTag)
set success forward tag in template file, must be called |
void |
setDispatchSuccessMessageTag(java.lang.String dispatchSuccessMessageTag)
set success message tag in template file, must be called |
void |
setDispatchSuccessStaySecondsTag(java.lang.String dispatchSuccessStaySecondsTag)
set "dispath success stay seconds" tag name in template file |
void |
setDispatchSuccessTemplateFileName(java.lang.String dispatchSuccessTemplateFileName)
set update/delete success message template file name |
void |
setDispatchTargetUrlTag(java.lang.String dispatchTargetUrlTag)
set dispatch target URL tag, for update/delete, these kind of request has same result pages, that is success or fail page, but different process logic |
void |
setLoginDispatcher(LeafDispatcher loginDispatcher)
set login dispatcher |
void |
setLoginedHomeDispatcher(LeafDispatcher loginedHomeDispatcher)
set logined home page url |
void |
setNoRightDispatcher(LeafDispatcher noRightDispatcher)
set URL for when no access right,normally pages of "You have no right to access page" |
void |
setOutputHtmlCharsetName(java.lang.String outputHtmlCharsetName)
|
void |
setSessionUser(javax.servlet.http.HttpServletRequest request,
java.lang.Object user)
save user information in HTTP session after logined |
void |
setUnloginedHomeDispatcher(LeafDispatcher unloginedHomeDispatcher)
set un-logined home page url |
java.lang.Throwable |
transalateUnhandleException(java.lang.Throwable t,
java.util.ResourceBundle rb)
translate unhandle exception |
void |
writeToResponse(javax.servlet.http.HttpServletResponse response,
java.lang.String html,
java.lang.String charsetName)
write HTML to response with specified charset encoding |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected java.lang.String outputHtmlCharsetName
protected java.lang.String dbCharsetName
protected java.lang.String defaultHtmlTemplateFileName
Constructor Detail |
public Controller()
Method Detail |
public WebAppContext createWebAppContext(int transactionIsolation, java.util.Map context, java.util.ResourceBundle resourceBundle, Controller controller)
transactionIsolation
- context
- resourceBundle
-
public BatchJobAppContext createBatchJobAppContext(int transactionIsolation, java.util.Map context, java.util.ResourceBundle resourceBundle)
transactionIsolation
- context
- resourceBundle
-
public boolean initApplication()
public void destroyApplication()
public boolean checkDatabaseConnectionPerRequest()
public java.lang.Object getSessionUser(javax.servlet.http.HttpServletRequest request)
request
- public void setSessionUser(javax.servlet.http.HttpServletRequest request, java.lang.Object user)
request
- user
- public void onBeforeUseConnection(java.sql.Connection con)
con
- public void onAfterUseConnection(java.sql.Connection con)
con
- public java.lang.String getDatabaseConnectFailErrorMessage()
public boolean hasLogined(javax.servlet.http.HttpServletRequest request)
request
-
public boolean hasAccessRight(LeafDispatcher leafDispatcher, javax.servlet.http.HttpServletRequest request)
leafDispatcher
- stands for one URLrequest
- HTTP request
public void setUnloginedHomeDispatcher(LeafDispatcher unloginedHomeDispatcher)
unloginedHomeDispatcher
- public LeafDispatcher getUnloginedHomeDispatcher()
public LeafDispatcher getLoginedHomeDispatcher()
public void setLoginedHomeDispatcher(LeafDispatcher loginedHomeDispatcher)
loginedHomeDispatcher
- public LeafDispatcher getHomeDispatcher(javax.servlet.http.HttpServletRequest request)
request
-
public LeafDispatcher getNoRightDispatcher()
public void setNoRightDispatcher(LeafDispatcher noRightDispatcher)
noRightDispatcher
- No right page URLpublic boolean needLogin(LeafDispatcher leafDispatcher, javax.servlet.http.HttpServletRequest request)
leafDispatcher
- request
-
public LeafDispatcher getLoginDispatcher()
public void setLoginDispatcher(LeafDispatcher loginDispatcher)
loginDispatcher
- protected abstract java.lang.Object getDataSource()
public java.lang.String getAppExceptionTemplateFileName()
public void setAppExceptionTemplateFileName(java.lang.String appExceptionTemplateFileName)
appExceptionTemplateFileName
- exception template file namepublic java.lang.String getOutputHtmlCharsetName()
public void setOutputHtmlCharsetName(java.lang.String outputHtmlCharsetName)
outputHtmlCharsetName
- The outputHtmlCharsetName to set.public void initAppExceptionPage(java.util.Map context, java.lang.Throwable error)
context
- error
- public java.util.ResourceBundle getResourceBundle(javax.servlet.http.HttpServletRequest request)
request
- public java.lang.String getDbCharsetName()
public void setDbCharsetName(java.lang.String dbCharsetName)
dbCharsetName
- DB charaset namepublic boolean isDbDuplicateException(java.lang.Throwable t)
t
-
public java.lang.Throwable transalateUnhandleException(java.lang.Throwable t, java.util.ResourceBundle rb)
t
- errorrb
- resource bundle, for multi-language usage.
public java.lang.String getDispatchFailTemplateFileName()
public void setDispatchFailTemplateFileName(java.lang.String dispatchFailTemplateFileName)
dispatchFailTemplateFileName
- template file name for "not find url you requested"public java.lang.String getDispatchSuccessTemplateFileName()
public void setDispatchSuccessTemplateFileName(java.lang.String dispatchSuccessTemplateFileName)
dispatchSuccessTemplateFileName
- public boolean isNewDispatchInstancePerRequest()
public java.lang.String getDefaultHtmlTemplateFileName()
public void setDefaultHtmlTemplateFileName(java.lang.String defaultHtmlTemplateFileName)
defaultHtmlTemplateFileName
- default home page template file namepublic java.lang.String getDispatchFailMessageListTag()
public void setDispatchFailMessageListTag(java.lang.String dispatchFailMessageListTag)
dispatchFailMessageListTag
- fail message tagpublic java.lang.String getDispatchSuccessJumpUrlTag()
public void setDispatchSuccessJumpUrlTag(java.lang.String dispatchSuccessJumpUrlTag)
dispatchSuccessJumpUrlTag
- success forward tagpublic java.lang.String getDispatchSuccessMessageTag()
public void setDispatchSuccessMessageTag(java.lang.String dispatchSuccessMessageTag)
dispatchSuccessMessageTag
- success message tagpublic LeafDispatcher processCheck(LeafDispatcher leafDispatcher, javax.servlet.http.HttpServletRequest request)
leafDispatcher
- request
-
public java.lang.String getDispatchTargetUrlTag()
public void setDispatchTargetUrlTag(java.lang.String dispatchTargetUrlTag)
dispatchTargetUrlTag
- public java.lang.String getDispatchSuccessStaySecondsTag()
public void setDispatchSuccessStaySecondsTag(java.lang.String dispatchSuccessStaySecondsTag)
dispatchSuccessStaySecondsTag
- "dispath success stay seconds" tag namepublic abstract TemplateWrapper getTemplateWrapper()
public void writeToResponse(javax.servlet.http.HttpServletResponse response, java.lang.String html, java.lang.String charsetName) throws java.io.IOException
response
- html
- charsetName
-
java.io.IOException
public abstract java.lang.String getTemplateRootFolder(javax.servlet.ServletConfig config)
config
-
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |