流程:进入upfile.jsp上传页面(是一个iframe),上传后返回filelist.jsp页面时获取本地IP和远程IP判断是否相等,假如相等按钮xxx显示.
代码:
Action:
public ActionForward AddFileInfo(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest servletRequest,
HttpServletResponse servletResponse) {
String strRes = "file_list";
FileForm frm = (FileForm) actionForm;
FileBO fb = new FileBO();
int iRes = 99999;
iRes = fb.AddFileInfo(servletRequest,servlet, frm);
fb.GetFileList(servletRequest, frm);
if (iRes == 0) {
servletRequest.setAttribute("need_tip", "true");
}
else{
servletRequest.setAttribute("need_err", "true");
}
this.procReturnException(iRes, servletRequest);
return actionMapping.findForward(strRes);
}FileBO 逻辑层:
public int GetFileList(HttpServletRequest req,FileForm frm){
log.info("获取文件列表!");
int iRes = 99999;
int userid = -1;
FileADO fad = new FileADO();
HttpSession session = req.getSession(true);
if(session.getAttribute("gobal_user_info") != null){
LoginVO lginfo = (LoginVO)session.getAttribute("gobal_user_info");
userid = lginfo.getUser_id();
}
if (frm.getUserid() == -1)
frm.setUserid(userid);
req.setAttribute("query_file_list",fad.getFileList(frm.getUserid(),frm.getAdver(),frm.getParent_sort(),frm.getChild_sort()));
//为何获取本地IP时出现异常呢?然而获取远程IP却没有报错,此时远程IP与本地IP均为:127.0.0.1
req.setAttribute("quest_localAddr",req.getLocalAddr());
req.setAttribute("query_remoteAddr",req.getRemoteAddr());
//删除预览临时文件夹中的文件
if(frm.getFile_info().getFile_id()>0){
fileUtil fu = new fileUtil();
String dir = fad.getParamValue("file_path");
dir += "//media//tmp//";
FileVO info = fad.getFileInfo(frm.getFile_info().getFile_id());
fu.deleteFile(dir + info.getFile_name());
}
iRes = 0;
return iRes;
}jsp页面:
<logic:lessThan value="2" name="gobal_user_info" property="level">
<c:if test="${quest_localAddr==query_remoteAddr}">
<input type="button" value="批量上传" name="xxx"/>
</c:if>
</logic:lessThan>tomcat报错:
严重: Dispatch[/fileAction] to method 'AddFileInfo' returned an exception
....
Caused by: java.lang.AbstractMethodError
at proc.fileManage.FileBO.GetFileList(FileBO.java:56)
at proc.fileManage.FileAction.AddFileInfo(FileAction.java:79)
... 29 more
2007-9-13 16:50:40 org.apache.struts.action.RequestProcessor processException
警告: Unhandled Exception thrown: class javax.servlet.ServletException
2007-9-13 16:50:40 org.apache.catalina.core.ApplicationContext log
信息: null
代码:
Action:
public ActionForward AddFileInfo(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest servletRequest,
HttpServletResponse servletResponse) {
String strRes = "file_list";
FileForm frm = (FileForm) actionForm;
FileBO fb = new FileBO();
int iRes = 99999;
iRes = fb.AddFileInfo(servletRequest,servlet, frm);
fb.GetFileList(servletRequest, frm);
if (iRes == 0) {
servletRequest.setAttribute("need_tip", "true");
}
else{
servletRequest.setAttribute("need_err", "true");
}
this.procReturnException(iRes, servletRequest);
return actionMapping.findForward(strRes);
}FileBO 逻辑层:
public int GetFileList(HttpServletRequest req,FileForm frm){
log.info("获取文件列表!");
int iRes = 99999;
int userid = -1;
FileADO fad = new FileADO();
HttpSession session = req.getSession(true);
if(session.getAttribute("gobal_user_info") != null){
LoginVO lginfo = (LoginVO)session.getAttribute("gobal_user_info");
userid = lginfo.getUser_id();
}
if (frm.getUserid() == -1)
frm.setUserid(userid);
req.setAttribute("query_file_list",fad.getFileList(frm.getUserid(),frm.getAdver(),frm.getParent_sort(),frm.getChild_sort()));
//为何获取本地IP时出现异常呢?然而获取远程IP却没有报错,此时远程IP与本地IP均为:127.0.0.1
req.setAttribute("quest_localAddr",req.getLocalAddr());
req.setAttribute("query_remoteAddr",req.getRemoteAddr());
//删除预览临时文件夹中的文件
if(frm.getFile_info().getFile_id()>0){
fileUtil fu = new fileUtil();
String dir = fad.getParamValue("file_path");
dir += "//media//tmp//";
FileVO info = fad.getFileInfo(frm.getFile_info().getFile_id());
fu.deleteFile(dir + info.getFile_name());
}
iRes = 0;
return iRes;
}jsp页面:
<logic:lessThan value="2" name="gobal_user_info" property="level">
<c:if test="${quest_localAddr==query_remoteAddr}">
<input type="button" value="批量上传" name="xxx"/>
</c:if>
</logic:lessThan>tomcat报错:
严重: Dispatch[/fileAction] to method 'AddFileInfo' returned an exception
....
Caused by: java.lang.AbstractMethodError
at proc.fileManage.FileBO.GetFileList(FileBO.java:56)
at proc.fileManage.FileAction.AddFileInfo(FileAction.java:79)
... 29 more
2007-9-13 16:50:40 org.apache.struts.action.RequestProcessor processException
警告: Unhandled Exception thrown: class javax.servlet.ServletException
2007-9-13 16:50:40 org.apache.catalina.core.ApplicationContext log
信息: null
在线等...