`

web 开发环境不同造成的错误

阅读更多
    今天上午郁闷死啦,因为部署项目的时候遇到了两个大问题。这两个问题产生的原因是本地开发环境和运行环境同生产机上的不同,下面我细细道来。
我本地使用的tomcat6.0、MyEclipse9、jdk1.6,生产机上的是tomcat5.5、jdk1.5
     第一个问题:将程序部署到linux环境下之后,开始发布的过程中,一直报找不到文件路径的错误。
因为这是一个写日志的文件,在windows下和linux下路径是不同的。比如在windows下的路径为: String pandianlogspath = "d:/logs/pandian_sql_log";   但是在linux路径就是 String pandianlogspath ="/usr/local/tomcat/logs/pandian_sql_log";因此在本地运行程序的时候使用的就是windows下的路径,每次部署程序到linux系统下的生产机上的时候就要修改路径。这是一个很麻烦的事情!
但是我确保部署的程序中文件路径是linux系统下的路径,但是他就是报错。
解决办法:每次打war包之前都选择MyEclipse菜单栏中的Project下的clean,清除一下要发布的项目。
    第二个问题:页面参数乱码问题。
这个是因为本地的D:\apache-tomcat-5.5.26\conf\server.xml和生产机上的server.xml的配置不一样的问题,我本地的配置是
<Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />
生产机上的是: <Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK" />

如果不指定编码格式,那么默认的编码是iso-8859-1,因此可以使用下面这种方式转码:
public static String getCodeString(String str){
if (str != null && !str.isEmpty()) {
try {
str = new String(str.getBytes("ISO-8859-1"),
"GBK");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return str;
},但是如果指定了编码,那么就不可以这样转码了,否则就会出现乱码。
解决办法:第一、指定文件编码格式,URIEncoding="GBK"
          第二、不指定编码,利用getCodeString(String str)方法在程序中对参数处理。

      第三个问题:启动程序的时候或者查询的时候后台报内存溢出的错误。 java.lang.OutOfMemoryError
这个问题是具有不确定性的,出现是无规律的。只要出现内存溢出了,就需要重启服务器,否则根本就登陆不了系统。
解决办法:在D:\apache-tomcat-5.5.26\bin\catalina.sh中,原来的文件是:

# Set juli LogManager if it is present
if [ -r "$CATALINA_HOME"/bin/tomcat-juli.jar ]; then
  JAVA_OPTS="$JAVA_OPTS "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" "-Djava.util.logging.config.file="$CATALINA_BASE/conf/logging.properties" 
fi
只需要添加"-Xms128" "-Xmx512"就可以了
# Set juli LogManager if it is present
if [ -r "$CATALINA_HOME"/bin/tomcat-juli.jar ]; then
  JAVA_OPTS="$JAVA_OPTS "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" "-Djava.util.logging.config.file="$CATALINA_BASE/conf/logging.properties" "-Xms128" "-Xmx512"
fi
ms初始化内存  mx可以使用的最大内存
听同事说这是java虚拟机的配置,但是为什么这样改还有待考虑。
这个链接关于tomcat内存溢出问题讲解的还是可以的,
http://www.360doc.com/content/08/0928/17/61497_1688019.shtml
      第四个问题:后台说找不到 java.lang.String.isEmpty()这个方法。
这个是因为本地项目添加的是jdk1.6的jar包,打包的时候用的是1.5版本的,生产机上使用的是JDK1.5 此时程序编译的时候一定要使用JDK1.5 编译。jdk1.6中的方法无法被1.5的使用。
解决办法:把jar包换成1.5或者是不使用jdk1.6中的方法,java.lang.String.isEmpty()是jdk1.6中的方法。
注意:jdk版本不同是一个很严重的问题,因为在本地运行的好好的程序到生产机上就报错了。
 

分享到:
评论

相关推荐

    Web应用安全开发规范.doc

    本规范旨在为Web开发人员提供一个全面、系统且实用的安全开发框架,以JSP/Java编程语言为例,涵盖了Web设计安全、Web编程安全以及Web配置安全三个关键领域。通过结合最佳实践和控制基础(如CBB,可能指的是...

    MS weboffice 开发实例

    这个开发实例提供了丰富的实践案例,通过详细的代码注释,旨在帮助开发者快速理解和掌握MS WebOffice的开发技术。 首先,了解MS WebOffice的核心功能是必要的。它支持多种文件格式的导入和导出,包括DOC、DOCX、XLS...

    vs.net2003开发环境安装问题

    Visual Studio .NET 2003是微软推出的一款集成开发环境(IDE),用于编写基于.NET Framework 1.1的应用程序,包括Windows桌面应用、Web应用和移动应用等。 【描述分析】 描述中提到的"vs.net2003开发环境安装问题...

    无法在WEB服务器调试问题解决

    在进行Web开发时,开发者经常会遇到无法在Web服务器上进行调试的问题。这类问题可能由多种因素引起,包括但不限于配置错误、权限设置不当、环境变量缺失等。本文将详细介绍如何诊断并解决这类问题。 #### 二、关键...

    web开发应知62件事

    标题中的“web开发应知62件事”是一个关于Web开发的知识点列表,源自Stack Overflow上的一个问题,由社区成员共同编辑并总结出62个关键点。这个列表涵盖了多个方面,包括界面和用户体验、安全性、性能等方面,旨在...

    java web开发过程中出现的一些诡异问题(2)

    在Java Web开发过程中,我们经常会遇到一些看似诡异但实际上有其内在原因的问题。这些问题可能是由于对技术理解不深入、代码编写不当或配置错误所导致的。本文将探讨几个常见的Java Web开发中的难题,并尝试提供解决...

    web service监测代码

    6. **安全性考虑**:在实施Web服务监控时,必须确保不会对服务造成额外负担,同时保护服务免受恶意攻击。这可能涉及使用匿名或者低权限的账户进行监测,以及限制监测频率。 7. **持续集成与自动化**:将监测代码...

    基于Web的试题组卷系统开发(论文)开题报告.pdf

    在理解这些知识点时,需要注意文档内容可能存在OCR技术造成的错误或遗漏,实际开发过程中可能还涉及到其他相关技术或方法论,例如敏捷开发、测试驱动开发(TDD)、持续集成(CI)等,这些并未在文档中明确提及。...

    Webscraping v1.0_Archdaily_python_webscraper_

    "需要打开变成IDLE才能用",IDLE是Python自带的集成开发环境(IDE),适合初学者使用,用户可以在其中运行和调试代码。"还需要改变里面的网站地址和名称",这意味着代码中的URL和可能的类名或ID需要根据实际的...

    微软Web压力测试工具(Microsoft Web.rar

    通过微软Web压力测试工具,开发团队能够更深入地了解Web应用在高负载条件下的行为,从而提升整体的用户体验和系统可靠性。对于任何Web开发者来说,这都是一个不可或缺的工具,尤其是在进行性能优化和系统稳定性测试...

    Dahua_web3.0控件-直连DVR.zip

    通过学习和分析示例,开发者可以避免很多常见的错误,提高开发效率。 5. **Web摄像头开发要点**: - **安全考虑**:由于涉及远程访问和数据传输,开发者必须注意网络安全,使用HTTPS加密通信,防止数据被窃取或...

    asp迷你服务器WebServer

    1. 简单易用:安装和配置过程简单,适合初学者快速搭建ASP开发环境。 2. 轻量级:占用系统资源少,不会对计算机性能造成显著影响。 3. 支持ASP特性:包括内置的VBScript和JScript引擎,支持服务器端包含(SSI)、...

    aspWebServer

    总的来说,ASPWebServer是ASP开发者的实用工具,它提供了高效、便捷的本地调试环境,有助于简化开发流程,提高开发效率。对于想要学习或使用ASP技术的人来说,ASPWebServer是一个值得尝试的选择。

    Java Web程序开发中字符乱码的原因与解决办法.pdf

    字符乱码问题是Java Web程序开发过程中经常遇到的一个问题,它会对用户界面的友好性以及信息的准确传达造成很大的影响。为了解决这个问题,我们首先要了解字符集和字符编码的相关知识,然后分析字符乱码的原因,并...

    simple web crawler using .net

    打开此文件,用户可以在Visual Studio环境中查看和编译整个Web爬虫项目。 - SEWN_L3: 这可能是项目的主要源代码文件或者特定模块,可能包含了爬虫的核心逻辑,如HTTP请求、HTML解析、数据提取等。 详细知识点: 1....

    Web安全测试规范

    检查Web应用的功能是否符合安全设计,例如用户认证机制、授权控制、错误处理等。 3.4 性能安全测试 评估Web应用在高负载、并发访问等情况下的安全稳定性,防止因性能问题导致的安全隐患。 3.5 数据安全测试 确认...

    web用户体验设计规范

    总的来说,Web用户体验设计规范旨在创建一个既满足用户需求又符合品牌定位的在线环境,通过精心设计的交互和视觉元素,提供愉悦、高效且无障碍的浏览体验。这需要设计师具备多方面技能,同时不断学习和适应行业发展...

Global site tag (gtag.js) - Google Analytics