J 2EE项目 struts框架 错误集合

[size=medium]1. Myeclipse+Tomcat+Sqlserver2000连接数据库配置时:
三个jdbc的jar包msbase.jar, msutil.jar, ms拷到
1>Tomcat/lib中,2>以[color=green][/color]及工程下的lib中,3>C:Program Files/Microsoft SQL Server 2000 Driver For JDBC

2. Error establishing Socket:
1>cmd下netstat –an查看开启的端口号,可以查看1433端口是否开启。
2>安装SqlServer2000的SP3或者SP4补丁。(可以在企业管理器的查询分析器中帮助来查看版本号,8.00.194说明没有安装补丁;760是安装了SP3,2039是安装了SP4)
3>SqlServer中属性/安全性,改为SQL和Windows
4>关闭防火墙,在例外中添加了端口1433(后来又打开了)

3. 严重Error:loading webapps ClassLoader
将五个jar包放到Tomcat的lib下面。Struts.jar, commons-beanutils.jar, commons-collection,jar, commons-digester.jar, commons-logging,
4 web.xml显示红叉,里面元素的顺序很重要的。

5 HTTP404找不到页面问题:
1>1.未部署Web应用
2.URL输入错误
排错方法:
首先,查看URL的IP地址和端口号是否书写正确。
其次,查看上下文路径是否正确 Project--------Properties------MyElipse-----Web-----
Web Context-root检查这个路径名称是否书写正确。
最后,检查一下文件名称是否书写正确。
3.目录不能被引用
排错方法:
在 Eclipse的“包资源管理器(Package Explorer)”检查文件存放的位置。由于META-INF WEB-INF文件夹下的内容无法对外发布,所以,如果你引用了带这两个目录的文件,肯定是不允许。例如: http://localhost:8080/guestbook/WEB-INF/index.html就是错误的文件位置存放错误
4. Tomcat服务器中web.xml中的问题
排错方法:
如果你的web应用程序有多个jsp页面的话,当你点击你web应用程序的虚拟根目录时可能会出现404错 误,只是你只需要修改Tomcat服务器中web.xml
<init-param>
<param-name>listings</param-name>
<param-value>false(将其该为true)</param-value>(修改了)
</init-param>
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/IBM_linghb1985/archive/2009/02/06/3866817.aspx

5. ClassCaseException:CookieTie:
1>在工程properties中library下添加Tomcat lib中的jsp-api.jar何servlet-api.jar
2>少tld文件(不是我的错误)
3>
6 Tomcat6.0中jndi配置
方法一:
在tomcat6.0目录下conf\Catalina\localhost下添加 (项目名称.xml)文件,内容如下:
<?xml version='1.0' encoding='UTF-8'?>
<Context displayName="NJHT" docBase="NJHT" path="/NJHT" privileged="true">
<Resource name="jdbc/NJHT"
auth="Container"
type="javax.sql.DataSource"
username="sa"
password="222"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://127.0.0.1:1433;databaseName=NJHT"
maxActive="50"
maxIdle="5"
maxWait="5000"/>
</Context>
方法二:(比较麻烦,功能不好,如果多个项目同时使用这个数据库时会冲突)
步骤一、在Tomcat6.0解压目录conf下找到server.xml,在其中的
<GlobalNamingResources></GlobalNamingResources>中加入如下代码(要根据自己的情况稍加修改):
<Resource name="jdbc/NHFreewayDB" auth="Container"
type="javax.sql.DataSource"
username="sa" password="aaa"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;databasename=NHFreewayDB"
maxActive="100" maxIdle="30" maxWait="5000"/>
步骤二、在Tomcat6.0解压目录conf下找到context.xml,在其中的<Context></Context>中加入并修改成如下代码(要根据自己的情况稍加修改):
<Resource name="jdbc/NHFreewayDB" auth="Container"
type="javax.sql.DataSource" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;databasename=NHFreewayDB"
username="jike" password="jike" maxActive="20" maxIdle="10"
maxWait="-1"/>
步骤三、在工程中/WEB-INF/下的web.xml中加入如下代码(要根据自己的情况稍加修改):
<resource-ref>
<description>demo</description>
<res-ref-name>jdbc/demo</res-ref-name>
<res-type>javax.sql.DataSource </res-type>
<res-auth>Container </res-auth>
</resource-ref>

步骤四、把SQL server 2000相应的.jar包加到Tomcat安装目录中的lib目录下和工程中的lib目录下。
通过以上四步就好了!

步骤五、spring的配置文件applicationContext.xml的配置如下:

<bean id="myJNDIDataSource"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/jdbc/demo"></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="myJNDIDataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.SQLServerDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>org/lxh/vo/Person.hbm.xml</value>
</list>
</property>
</bean>
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/qzj5851/archive/2009/08/12/4437555.aspx
7 有些jsp文件打不开,一打开Myeclipse就会死掉,自动关闭
Windows—>Preferences —>Editor—>File ….jspdefualt
8 部署web项目时,报错:Could not copy all resources to D:\Program Files\Tomcat 6.0\webapps\freewayad. If a file is locked, you can wait until the lock times out to redeploy, or stop the server and redeploy, or manually remove the deployment at D:\Program Files\Tomcat 6.0\webapps\freewayad
1、打开你的工程目录 找到.classpath文件 editplus打开
2、对照你classpathentry里面的是不是jar包是不是都在指定目录下面
3、如果找到指定目录下面没有这个jar包 删除掉就可以啦!最后不要忘记按下f5刷新部署!
也有可能是路径不正确了重新设置路径PropertyMyeclipseweb

9.对于在myeclipse中JS文件文字乱码问题
对于乱码问题,主要有MyEclipse的设置有关,对于乱码是不会导致myEclipse语法错误提示的!
1>注释乱码:可以在windowsPreferencesMyEclipse—>Files and Editors此选项卡下的js选项卡窗口,有一个Encoding属性值,可选择Chinese即可解决显示乱码的问题!
2>源码中的乱码:可以在Windows—>Preferences—>General—>Content type下面找到jsp文件,修改default encoding为GBK等。(但是若将此选项置空,而在每个文件的右键properties中resources设置text file encoding编码,对系统各模块合成时比较好处理)
10、由于Myeclipse非法关闭,导致其中运行着的Tomcat无法关闭,以至于重启Myeclipse后无法启动Tomcat:(Address already in use: JVM_Bind<null>:8080也是此类问题)
1.打开CMD. cmd
2.查找端口号的PID netstat -a -o
3.强行关闭ntsd -c q -p PID(查询出来的PID号码) 或者tskill PID
11、重新修改web部署的路径:
PropertyMyeclipseweb
12. SQL Server安装之后的问题:
(1)用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。解决,右键属性,更改安全中的身份验证为sql Server和Windows,之后右键编辑sql Server 注册属性,改为使用Windows sqlServer身份验证为sa密码。。。
(2)开机有用户选择。解决:msconfig 将启动项中的服务管理器去掉。查看regedit中loca_key下software WindowsNT winlog 下是否有DefaultUserName 增为开机默认的用户名
13 myeclipse中保存文件,出现“Hot code replace failed” 这样的对话框。
解决办法: 默认情况下,tomcat是在 debug模式下进行启动的,将其改成 run模式即可解决问题。(可以保存是成功的,只是debug不会立即相应,因为只有修改了新的函数之类的影响到父子类框架等的时候才会提示,需要在重新部署之后才会相应)
14 message.properties文件用bean:message key引入出现中文乱码
将message文件转换为utf-8文件,方法: cmd切换到message文件所在目录,(或者将文件拷到cmd目录下) 运行native2ascii –encoding utf-8 a.properties b.properties即可转换文件编码,之后再拷到工程中使用 也有jsp页面的pageEncoding的设置错误
15 tomcat启动时,报错org.xml.sax.SAXParseException: Invalid byte 2 of 2-byte UTF-8 sequence.
由于tomcat下jndi配置文件中出现乱码或中文字符。只要将jndi配置文件更改即可(jndi配置见6)
16 修改了程序,也重新部署重新启动服务器,但是结果没有反应
可能是因为jar路径错误,检查项目右键configure build pathadd external jar,检查是否有叹号的jar包;如果有删掉,重新导入需要的jar包
17.在cmd下运行测试sql是否连接成功的java文件
1.可以将三个sql包mssqlserver.jar msbase.jar msutil.jar 放到java安装目录下jre\lib\ext下(注意不是jdk下的jre),之后javac conn.java java conn即可(开始装载类的时候,ExtClassLoader类会去ext下进行进行装载)
2.在cmd中设置环境变量 set classpath=%classpath%;E:\lib\ 之后javac conn.java java conn即可 (也可以将lib下的每个包具体的写出来: E:\lib\mssqlserver.jar;E;\lib\msbase.jar;E:\lib\msutil.jar 可通过echo %classpath%来查看现在的classpath值)
3.在javac中增加-classpath选项 javac –classpath=%classpath%;E:\lib\ conn.java 之后java conn即可 (也可像2中写具体的jar包)
4在我的电脑—》右键属性——》高级—》环境变量中设置classpath添加E:\lib\mssqlserver.jar;E;\lib\msbase.jar;E:\lib\msutil.jar
目的都是通过设置classpath使得javac能够找到三个jar包

18 NoClassFoundError:Hello错误:
1》输入java,看是否可以执行,不能执行说明没有设置好path和classpath
2》之前设置了classpath为set classpath=%classpath%;E:\lib\ 但是echo classpath出来的结果没有.; 少了点 即没有当前路径,所以不会在当前路径下找类
可以去环境变量中classpath前面添加.;(建议使用这种),或者修改那个set设置为set classpath=.;%classpath%;E:\lib\

[/size]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值