java开发的一个问题在windows无问题部署到linux就不行是为什么

java开发的一个问题在windows无问题部署到linux就不行是为什么
springmvc框架
情况是这样

在windows开发的程序一个下载excel的功能 在webroot下有个文件夹 excel 里面装着 a.xls
这个功能就是从服务器把这个a.xls下载到本地 ,程序在windows下部署了测试了 功能可以用
无错
但是把项目部署到linux上 发现下载的a.xls 提示格式不对是什么原因 一样的程序 一样的代码
一样的xls啊
下载代码如下:
response.setContentType("text/html;charset=utf-8");
try {
request.setCharacterEncoding("UTF-8");
} catch
(UnsupportedEncodingException e1) {
// TODO Auto-generated catch
block
e1.printStackTrace();
}
java.io.BufferedInputStream bis =
null;
java.io.BufferedOutputStream bos = null;

String
ctxPath = request.getSession().getServletContext().getRealPath("/")+
"\\excel\\";
String fileName = "user.xls";
String downLoadPath =
ctxPath +fileName;
try {
long fileLength = new
File(downLoadPath).length();

response.setContentType("application/x-msdownload;");

response.setHeader("Content-disposition", "attachment; filename="
+ new
String(fileName.getBytes("utf-8"), "ISO8859-1"));

response.setHeader("Content-Length", String.valueOf(fileLength));
bis =
new BufferedInputStream(new FileInputStream(downLoadPath));
bos = new
BufferedOutputStream(response.getOutputStream());
byte[] buff = new
byte[2048];
int bytesRead;
while (-1 != (bytesRead =
bis.read(buff, 0, buff.length))) {
bos.write(buff, 0, bytesRead);
}
} catch (Exception e) {
e.printStackTrace();
}
finally {
if (bis != null)
try {
bis.close();
} catch
(IOException e) {
e.printStackTrace();
}
if (bos != null)
try
{
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
}

第1个回答  2012-09-18
不是 斜杠的问题么,windows 和 linux 的斜杠是 相反的本回答被提问者采纳

java项目部署在windows上能显示的东西在linux就不能显示
可能是图片路径问题,或者是图片命名问题

windows下eclipse编译好了.class,替换到linux下后服务不能访问了
具体的可能如下:1、比较有可能的是你的JDK升级了,和linux上的JDK版本不一致,比如你升级到了java7,而linux上还是java6,这样你可以在eclipse上对你的工程设定一下jdk版本,和linux上是一致的就可以;2、上传到linux下,

...上的java项目,能正常启动tomcat运行,部署到linux服务器上就报错,错...
1. tomcat 成功开启 2.它的端口也没有和其它服务的端口冲突 3.确认访问路径,查看本机 host 中配置的信息也是正确的 这时就很纳闷了,后经大神指导,才明白:项目在 idea 上运行的时候,默认是省略项目名的,所以地址栏为:「 localhost:8080\/index.jsp 」,但是,项目部署到服务器上后,是把项目...

生成图片的问题,在windows环境下开发的,没有任何问题,但是到了linux环境...
一般涉及到X11都是显卡驱动的问题,建议卸载linux下的独立显卡驱动!可以先尝试以下操作:1)在linux终端输入glxgears,如果生成图像说明显卡驱动已安装!2)在这个网址http:\/\/www.paraview.org\/paraview\/resources\/software.php上下载paraview,解压后如果能正常显示图形(解压运行里面的paraview),说明驱动正...

java 使用ftp 下载文件在windows环境下正常,在linux下载不了
PUT <本地端:上传的档名> <服务端:存放的档名> 下载:ex:从服务器端下载一个档名为 linux.rar 的文件到本地路径 C:\\,存放档名为 LINUX_S.RAR。ftp> get linux.rar c:\\LINUX_S.RAR 上传:ex:从本地端路径 C:\\ 上传一个档名为 LINUX_S.RAR 的文件到服务器,存放档名为 linux....

java项目部署在windows上能显示正常项目部署在linux上显示英文_百度知 ...
设置linux日期显示格式 设置 LC_TIME 为 "zh_CN.XXX"XXX 为具体编码,如 GBK, UTF-8

tomcat 6.0+JDK1.6windows下没问题,部署到LINUX系统下就不行了 GBK...
无关,这个语句是纯JAVA方面的,和运行环境无关的。

java编程在linux下和windows下有什么区别。。。
几乎没有区别,这个你要理解“JAVA是跨平台”的原理,本质是由于JAVA是基于jdk,jre环境下运行的,所以不论是LUNIX还是WINDOWS,有这两者的配置,即可进行JAVA编程,没什么大区别,否则就不叫跨平台了。如果硬要说区别的话,那就是Java的相关软件(如jdk、IDE)在Linux平台下安装部署是比windows麻烦,...

在linux上部署webservice客户端报错,在windows上没有问题
此种错误是由于jsp页面获得了一个空指针导致,即servlet传参数时有一个参数没穿过去或者传的参数和接受的参数不一致导致的,检查一下参数即可解决.

网上有人说开发Java最好在windows上(相对于linux来说),请问为什么?最好...
这个问题我知道!Linux下用c或c++开发Linux下的应用是必须的,因为他们不能跨平台;但是java就不同了,他的跨平台性,造成了他在任何环境下开发都是一样的,如果选择Linux开发当然可以,但开发环境的部署相对于windows而言要复杂很多,如果没有Linux基础就更加麻烦...不过,Linux用熟了的确很牛,据说在Linux下部...

相似回答