zoukankan      html  css  js  c++  java
  • 令我崩溃欲死的tomact版本问题

    最近做一个项目,里边要用到javawebservice,最终决定采用Rest 架构风格的web 服务。由于本人对java 这一套工具不是很熟悉。以前只写过控制台的helloword,然后,就直接到 rest 框架选择 + web .中间的曲折让我d疼不已。


    既然今天的题目是tomact的版本,我就先把中间的曲折放一放,等些rest 的时候再说


    做rest的一个入门示例的时候,我在eclipse上部署了tomact7.0 用的eclipse是helios的。然后,建立 动态web项目,在网上找到 rest的入门代码之后,开始运行,就爆出 


     Error configuring application listener of class org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
    java.lang.ClassNotFoundException: org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:415)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:397)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4660)
    at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
    at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)
    2011-9-9 0:54:17 org.apache.catalina.core.StandardContext listenerStart


    如此错误,无语啊。然后就开始痛苦的寻找解答过程。最初以为是没有类,因为eclipse用的少,以为是自己包的引用有问题,搞半天,不行。然后就找什么原因会导致 ClassNotFound,当然,我已经很确定的查过了,在引入的包是有该类的。在网上翻与classnotfound相关的东西。有的说 包冲突会引起这个问题,挨个jar查看,果然有包重复,网上说删掉ok。结果,我这不行。找啊找啊,试了N中办法。他nainai的还不行。我这个人属于那种遇到一个问题,不解决不爽的人。结果这个问题搞了几天!!都没搞定。当然中间还有其他事做。崩溃啊。在stackflow上也有一个小伙子遇到同样的问题,结果 回答的人的英语答案,我理解的不好,反正没成功。我真的几欲崩溃 了。。

    最终我开始怀疑是不是我的环境的问题。因为我是 win7 64位的。eclipse版本相对高一点。当时压根没想到tomact7.0 的事。然后就在同学那试。

    同学的环境是 32 系统,myeclipse.拷过去之后,运行之后成功了。我d疼啊,想必大家理解不了当时一个解决了n天都没有解决的问题的人发现在别人机器上完好运行的 人的心情。。。在myeclipse能成功,为啥在我这不行!

    难道真的是64位同32的问题??

    这个不好说啊,总不能让我换系统吧

    还有就是tomact配置问题了,因为我不敢确定我的tomact配置没有问题,因为对它实在不熟。然后就在网上狂翻 tomact配置。不行啊,卸载windows 安装版的,换成免安装的,32换 64的,找配置,乱七八糟。大爷的还不行。版本?可能是版本,我就下6.0的,其实每次当你卸载的toamct之后,又创建新的tomactru 服务器的时候,很有可能会出现Cannot create a server using the selected type的错误,在网上找到  

    还有另一种方式: 
    在当前工作区中如下路径:/.metadata/.plugins/org.eclipse.core.runtime/.settings,记住不是eclispe程序的路径。 

    把其下org.eclipse.wst.server.core.prefs和 org.eclipse.jst.server.tomcat.core.prefs这两个文件去掉 

    后重启eclipse即可。 

    好吧,感谢。这个可以用。当然,你需要重新配置你的tomact路径。

    然后,换成6.0其实还有问题,我的web 选择版本为3.0 哎太新了,不行啊。结果创建 6.0server时就出错。

    Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modules

    网上又找到

    ------------------------------------
    在project的.setting folder下面,有个名为org.eclipse.wst.common.project.facet.core.xml的文件,里面配置有各种版本信息。此时,按照本机配置修改这个文件,问题就解决了。

    <?xml version="1.0" encoding="UTF-8"?>
    <faceted-project>
    <runtime name="Apache Tomcat v5.5"/>
    <fixed facet="jst.web"/>
    <fixed facet="jst.java"/>
    <installed facet="jst.java" version="5.0"/>
    <installed facet="jst.web" version="2.4"/>
    <installed facet="wst.jsdt.web" version="1.0"/>
    </faceted-project>


    像我这样的错误,可以下载Tomcat 7。0解决,不过我闲麻烦,干脆就在配置文件中把<installed facet="jst.web" version="3.0"/> 改成低些的版本version="2.5" 就好了

    -------------------------------
    ps~你可以下7.0,我不管,反正我不会轻易下了。
    ok。改。重新运行。

    我去啊,终于成功了。太难得了。


    意识到tomact版本之前,我一直纠结于我的凭什么不行。想的我头大头疼,一直爆粗口。哎,程序员遇到自己搞不定的错误很纠结啊,不爆两句怎么缓解压力啊。。

    过一短时间,把这个rest的h入门程序贴上来。分析一下。

    ok。还要集成到gae里边。不知道还会遇到什么错。


    哦,忘了说了,编译器不是万能的,也有可能是坑爹的.

    啊,那会把我搞得快疯了。。。

    以前做一个读取pdf文件也是版本问题。用pdfbox。有异常,在后边版本中解决的。我也是很悲剧的研究了好久。。。。

    还有eclipse插件版本选择,还有一些列与版本相关的东西。。神那,快来配一个人把这理的更清楚一点。。。。。


                                                                             10年九月十日,玩。速比疾书

  • 相关阅读:
    阶段3 3.SpringMVC·_03.SpringMVC常用注解_1 RequestParam注解
    阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_7 获取Servlet原生的API
    函数传参
    利用 操作符特性 代替if判断语句
    for(;;)和 while(1) 有什么区别吗?for()和while()的使用情景。
    一个简单的mfc单页界面文件读写程序(MFC 程序入口和执行流程)
    ARM异常---一个DataAbort的触发过程:
    C语言,单链表操作(增删改查)(version 0.1)
    Cpu实验
    H-JATG:NAND_FLASH的参数设置
  • 原文地址:https://www.cnblogs.com/linecheng/p/2210958.html
Copyright © 2011-2022 走看看