`
listenan
  • 浏览: 1621 次
社区版块
存档分类
最新评论

jpetstore 5.0部署上遇到的bug

阅读更多

今天学习在tomcat 上部署 jpetstore,但是按照网上其他的朋友写的部署方法,发生了错误,因为我用的oracle数据库,而其他人都用的mysql,所以这个错误好像还没有人写出来。

先列举一下我的部署方法,实际上很简单。

1.下载jpetstore5.0,解压缩后,将iBATIS_JPetStore-5.0\JPetStore-5.0\build\wars下的jpetstore.war拷贝到tomcat 的发布目录。最好解压缩,因为后面要修改其中的数据源配置。

2. 使用iBATIS_JPetStore-5.0\JPetStore-5.0\src\ddl\oracle 文件夹里的sql文建立oracle的数据库表。(我是用plsql建立的)记住使用这两个文件的顺序,先使用jpetstore-oracle-schema.sql建立表结构,然后用第二个建立测试数据。

3.修改数据源配置,配置文件在C:\Tomcat 5.0\webapps\jpetstore\WEB-INF\classes\properties下的database.properties,按照实际情况修改。

基本上就这三步,就可以配置成功!但是启动tomcat后,点击http://127.0.0.1:8086/jpetstore/shop/index.shtml  ,然后接着点进去查看动物列表,点到选择 动物 itemId的时候,就会提示错误说
C:\Tomcat 5.0\webapps\jpetstore\WEB-INF\classes\com\ibatis\jpetstore\persistence\sqlmapdao\sql 中的Item.xml有问题,而且报的是数据库SQL错误,错误提示我不在这里写了,后来,我打开item.xml后,把其中的sql复制到plsql里运行了一下,终于发现错误啦!

错误的提示:未明确定义列 ITEMID
错误的原因:因为其中的SQL是多表查询,而这几个表里都有 itemId字段,而且它写的 select   ITEMID......没有指定是那个表的itemId,所以,将这个字段加一个表名前缀就可以了,例如:select  I.itemId ........

改正后,重起tomcat,然后运行程序,一切OK!

如果有不明白的地方,可以发邮件探讨 listenan#tom.com

分享到:
评论
5 楼 tmartin 2012-03-18  
chenjia66804610 写道
我按照网友的说法配了
楼主说的也都改了
但是点击fish是报错
不知道楼主有没有碰到过呢,错误和连接如下:
http://192.168.2.114:8060/JPetStore5.0/shop/viewCategory.shtml?categoryId=FISH

javax.servlet.ServletException: javax.servlet.jsp.JspException: Define tag cannot set a null value
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:850)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
org.apache.jsp.catalog.Category_jsp._jspService(Category_jsp.java:351)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


root cause

遇到了与你一样的问题,可惜还没解决,请问你解决了吗?
4 楼 xiecailian 2008-07-22  
谢谢...呵呵..
3 楼 gml520 2008-06-19  
谢谢楼主,我的问题解决了!
2 楼 chenjia66804610 2008-03-27  
我按照网友的说法配了
楼主说的也都改了
但是点击fish是报错
不知道楼主有没有碰到过呢,错误和连接如下:
http://192.168.2.114:8060/JPetStore5.0/shop/viewCategory.shtml?categoryId=FISH

javax.servlet.ServletException: javax.servlet.jsp.JspException: Define tag cannot set a null value
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:850)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
org.apache.jsp.catalog.Category_jsp._jspService(Category_jsp.java:351)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


root cause
1 楼 spank 2007-08-23  
我也下载的jpetstore5.0
不过数据库采用的mysql 服务器tomcat5.5 步骤给你说明的差不多
结果不能进入主界面,看不到鹦鹉的画面。不知道问题出在哪了?
我给你发了封邮件,有空帮我看下吧,谢谢!

相关推荐

    JPetStore-5.0.zip_JPETSTO_jpetstore-5_jpetstore5_jpetstore5.0_jp

    《JPetStore-5.0:一个基于iBatis的开源电商示例解析》 JPetStore-5.0是一个著名的开源项目,它基于iBatis数据持久层框架,为开发者提供了一个完整的电子商务应用程序示例。这个项目由Apache Software Foundation...

    iBatis-JPetStore-5.0

    在本教程中,我们将通过“iBatis-JPetStore-5.0”项目来深入理解iBatis的核心概念和功能。 **1. iBatis概述** iBatis是一个轻量级的ORM(对象关系映射)框架,它的主要目标是简化Java应用中的数据库操作。它不完全...

    ibatis入门,Ibatis开发指南,JPetStore-5.0

    本篇文章将深入探讨iBatis的核心概念、功能特性以及如何通过JPetStore-5.0这个经典示例来学习和掌握iBatis。 1. iBatis简介: iBatis是由Clinton Begin创建的一个开源项目,最初设计用于简化Java中的数据库操作。它...

    jpetstore系统架构图

    尤其在jpetstore5.0版本中,其系统架构图详细展示了系统的各个组成部分及其相互间的交互方式,为理解和学习基于Java的企业级应用开发提供了宝贵的资料。 ### 一、系统架构概述 jpetstore5.0系统架构遵循经典的MVC...

    JPetStore-5.0

    "JPetStore-5.0" 是一个基于STRUTS2框架实现的在线宠物商店示例应用。这个项目旨在提供一个学习和演示STRUTS2框架功能的实例,让开发者能够更好地理解和掌握STRUTS2在实际开发中的应用。 **STRUTS2框架详解** ...

    SQL+Jpetstore配置

    ### SQL + JPetStore配置详解 #### 一、概述 JPetStore是一个广泛使用的开源示例应用程序,...通过以上步骤,您可以成功地在本地环境中部署并运行JPetStore 5.0,并且能够有效地解决配置过程中可能遇到的各种问题。

    JPetStore (Struts + Spring + Hibernate)版

    这个版本相较于之前的JPetStore5.0,进行了重要的技术升级,主要体现在将数据持久层的Ibatis替换为更强大的Hibernate,并引入了Spring框架来增强应用程序的模块化和管理。 **Struts框架:** Struts是Apache基金会的...

    jpetstore

    在部署方面,jpetstore会依赖于Web服务器如Apache Tomcat或Jetty,这些服务器能够运行Servlet和JSP。同时,它也需要Java运行环境(JRE)和Java Development Kit(JDK)来编译和运行。 总的来说,jpetstore是一个...

    部署IBatis例子JPetstore源码-MySql的JDBC库导入Tomcat6中(第四步)

    NULL 博文链接:https://llhdf.iteye.com/blog/268601

    中南大学软件学院架构jpetstore重构

    《中南大学软件学院架构:JPetStore的Struts2重构探索》 在现代软件工程领域,架构设计是至关重要的一步,它决定了系统的可扩展性、可维护性和性能。中南大学软件学院的一个实践项目,就是对经典的JPetStore应用...

    JpetStore用AJAX改进用户体验

    AJAX开发。在JSP/Servlet实现的JPetStore项目基础上,在表单验证、表单输入、订单更新等环节增加AJAX技术,改善项目的用户体验。以下三个任务为必须完成部分,还可自行添加其他改进用户体验的功能。

    iBATIS JPetStore

    在iBATIS JPetStore-5.0这个版本中,可能包含了以下文件和目录: - **src/main/java**:包含了所有的Java源代码,包括实体类、DAO接口和实现、服务层类等。 - **src/main/resources**:存储了配置文件,如iBATIS的...

    JPetStore静态页面_java_java课程设计_java编程_

    最后,开发完成后,JPetStore需要部署到应用服务器上,如Apache Tomcat或Jetty。这些服务器运行Servlet和JSP,处理HTTP请求,并向客户端返回响应。 通过学习和实践JPetStore项目,学生可以深入理解Java Web开发的...

    jpetstore开源学习代码

    J2EE,即Java企业版,是Java平台的一部分,专为开发和部署分布式企业级应用程序而设计。它提供了丰富的API和服务,包括数据库连接、事务管理、安全性和Web服务等,使得开发者能够构建可扩展、可靠且跨平台的应用程序...

    iBATIS_JPetStore-4.0.5

    4. **web**:这是Web应用的部分,可能包含`WEB-INF`目录,其中`web.xml`是Web应用的部署描述符,定义了Servlet、过滤器和监听器等。此外,还可能有JSP页面、CSS样式表、JavaScript文件等。 5. **build**:构建目录...

    jpetstore宠物店程序

    jpetstore设计为部署在Tomcat的`webapps`目录下,启动Tomcat后,应用将自动加载并可供访问。 5. **文件结构** `rightjpetstore` 是项目的主要压缩包,解压后通常会包含以下几个部分: - `WEB-INF` 目录:包含了...

    学习Spring 的例子JpetStore

    《Spring框架学习:以JpetStore为例》 Spring框架是Java企业级应用开发中的核心框架,它为开发者提供了丰富的功能,简化了开发流程,提高了代码的可测试性和可维护性。JpetStore作为Spring的经典示例项目,是学习...

Global site tag (gtag.js) - Google Analytics