先解释一下开发部署的过程:
下任务后,在本地编写程序,程序是java+jsp的结合,开发环境是winxp+tomcat。
有一个开发服务器,一个应用服务器。2台不同的linux服务器(weblogic),环境是系统服务部搭设的,环境都是一样的。
但是开发服务器上的程序可以由我们开发人员主动上线,可以自己删改增加里面的程序,
而应用服务器是客户直接使用的服务器,上线只能向系统服务部申请,让他们代为上线。这是前提。
这次一个程序开发,关于excel文件上传并将数据存储到数据库的动作,也只是一个更新了,我更改了一点点,然后上线到开发服务器上,能够正常运行,然后向系统服务部申请上线,将上线文件上线到指定目录等待。
在开发服务器上能够正常运行,在运行环境下却报错了。
根据错误信息,好像是说我某个方法出错了,但是这个方法确实是没有出错,我在开发环境下上传的文件是同一个文件,处理的程序也是同一个程序。
这里我将运行环境下报错信息粘贴一下:
[code="java"]
/bea/user_projects/domains/sasdomain/./SASManagedServer/.wlnotdelete/extract/SASManagedServer_frame_frame/jsp_servlet/_jsp/_mart_ny/__ny_md_033_2.java:133: cannot resolve symbol
probably occurred due to an error in /jsp/mart_ny/ny_md_033_2.jsp line 11:
String tmp = tntde.fromExceltoSql_1(filename);
Full compiler error(s):
/bea/user_projects/domains/sasdomain/./SASManagedServer/.wlnotdelete/extract/SASManagedServer_frame_frame/jsp_servlet/_jsp/_mart_ny/__ny_md_033_2.java:133: cannot resolve symbol
symbol : method fromExceltoSql_1 (java.lang.String)
location: class com.baosight.dw.ny.TMUD_NY_TJ_DoExcel
String tmp = tntde.fromExceltoSql_1(filename); //[ /jsp/mart_ny/ny_md_033_2.jsp; Line: 11]
[/code]
这中间说:
[code="java"]
String tmp = tntde.fromExceltoSql_1(filename);
[/code]
报错了,其实这方法根本没错的,在开发环境能够正常运行的。
诡异的是,另外一个jsp经过我修改后放在服务器上后,居然也报错:cannot resolve symbol
刚刚报错的文件代码贴出来:
[code="java"]
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="com.baosight.dw.ny.TMUD_NY_TJ_Upload"%>
<%@page import="com.baosight.dw.ny.TMUD_NY_TJ_DoExcel"%>
<%
TMUD_NY_TJ_Upload tnju = new TMUD_NY_TJ_Upload();
TMUD_NY_TJ_DoExcel tntde = new TMUD_NY_TJ_DoExcel();
String fileupdate=request.getParameter("filedate");
String url = "/dw/webupload/mart_ny/nbbx/";
String filename = tnju.fileupload(pageContext,url+fileupdate);
if(!"".equals(filename)){
String tmp=tntde.fromExceltoSql_1(filename);
if("".equals(tmp)){
out.print("window.alert('恭喜,数据导入成功.');window.location.href='ny_md_033.jsp';");
}else{
out.println(fileupdate);
out.println("window.alert('请注意,本次操作出现故障:"+tmp+"请重试或联系管理员')");
}
}else{
out.print("文件上传时出现问题");
}
%>
[/code]
大家可以看到,我是实例化的一个tntde对象,调用fromExceltoSql_1(filename),然而在浏览器中,这一行代码红色了
而上面的上传动作,经过确认也没有成功上传到服务器。
在开发服务器同样的代码却能够正常运行。
出现这样的情况,应该要怎样去处理呢?
大侠们给个思路,具体点最好了