解决SUN petstore1.4 的编译问题
2005-10-24 09:50
330 查看
昨天开始想研究一下SUN的petstore,先下载了petstore-1_3_1_02.zip和petstore-1_3_2.zip安装试用,
安装很顺利,但是程序在运行中会抛出异常,异常信息如下:
----------------------------------------
java.security.PrivilegedActionException: javax.servlet.ServletException: An erro
r occurred while evaluating custom action attribute "value" with value "${item.a
ttribute}": Unable to find a value for "attribute" in object of class "com.sun.j
2ee.blueprints.catalog.model.Item" using operator "."
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at com.sun.j2ee.blueprints.waf.view.template.tags.InsertTag.doEndTag(InsertTag.java:99)
at org.apache.jsp.template$jsp._jspService(template$jsp.java:159)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:431)
at org.apache.catalina.core.ApplicationDispatcher.access$0(ApplicationDispatcher.java:359)
at org.apache.catalina.core.ApplicationDispatcher$PrivilegedForward.ru(ApplicationDispatcher.java:130)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:347)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.insertTemplate(TemplateServlet.java:288)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.process(TemplateServlet.java:246)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.doGet(TemplateServlet.java:143)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at com.sun.j2ee.blueprints.signon.web.SignOnFilter.doFilter(SignOnFilter.java:133)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at com.sun.j2ee.blueprints.encodingfilter.web.EncodingFilter.doFilter(EncodingFilter.java:77)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:368)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
at java.lang.Thread.run(Thread.java:534)
Caused by: javax.servlet.ServletException:
4000
An error occurred while evaluating custom action attribute "value" with value "${item.attribute}": Unable to find a value for "attribute" in object of class "com.sun.j2ee.blueprints.catalog.model.Item" using operator "."
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:463)
at org.apache.jsp.product$jsp._jspService(product$jsp.java:1357)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
at org.apache.catalina.core.ApplicationDispatcher.access$1(ApplicationDispatcher.java:501)
at org.apache.catalina.core.ApplicationDispatcher$PrivilegedInclude.run(ApplicationDispatcher.java:146)
... 66 more
InsertTag:doEndTag caught: javax.servlet.ServletException: An error occurred while evaluating custom action attribute "value" with value "${item.attribute}": Unable to find a value for "attribute" in object of class "com.sun.j2ee.blueprints.catalog.model.Item" using operator "."
javax.servlet.ServletException: An error occurred while evaluating custom action
attribute "value" with value "${item.attribute}": Unable to find a value for "a
ttribute" in object of class "com.sun.j2ee.blueprints.catalog.model.Item" using
operator "."
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageCon
textImpl.java:463)
at org.apache.jsp.product$jsp._jspService(product$jsp.java:1357)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
at org.apache.catalina.core.ApplicationDispatcher.access$1(ApplicationDispatcher.java:501)
at org.apache.catalina.core.ApplicationDispatcher$PrivilegedInclude.run(ApplicationDispatcher.java:146)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at com.sun.j2ee.blueprints.waf.view.template.tags.InsertTag.doEndTag(InsertTag.java:99)
at org.apache.jsp.template$jsp._jspService(template$jsp.java:159)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:431)
at org.apache.catalina.core.ApplicationDispatcher.access$0(ApplicationDispatcher.java:359)
at org.apache.catalina.core.ApplicationDispatcher$PrivilegedForward.run(
ApplicationDispatcher.java:130)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:347)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.insertTemplate(TemplateServlet.java:288)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.process(TemplateServlet.java:246)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.doGet(TemplateServlet.java:143)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at com.sun.j2ee.blueprints.signon.web.SignOnFilter.doFilter(SignOnFilter.java:133)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at com.sun.j2ee.blueprints.encodingfilter.web.EncodingFilter.doFilter(EncodingFilter.java:77)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:368)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
at java.lang.Thread.run(Thread.java:534)
----------------------------------------
而在J2EESDK1.3.1的日志记录中提示错误:
-------------------------------------------
javax.ejb.ObjectNotFoundException: No database row for primary key
at com.sun.ejb.persistence.PartitionImpl.ejbFindByPrimaryKey(PartitionImpl.java:722)
at com.sun.j2ee.blueprints.supplier.inventory.ejb.InventoryEJB_PM.ejbFindByPrimaryKey InventoryEJB_PM.java:115)
at com.sun.j2ee.blueprints.supplier.inventory.ejb.InventoryEJB_PM_LocalHomeImpl.findByPrimaryKey(InventoryEJB_PM_LocalHomeImpl.java:67)
at com.sun.j2ee.blueprints.supplier.tools.populate.InventoryPopulator.createInventory(InventoryPopulator.java:105)
at com.sun.j2ee.blueprints.supplier.tools.populate.InventoryPopulator.access$000(InventoryPopulator.java:50)
at com.sun.j2ee.blueprints.supplier.tools.populate.InventoryPopulator$1.create(InventoryPopulator.java:76)
at com.sun.j2ee.blueprints.supplier.tools.populate.XMLDBHandler.endElement(XMLDBHandler.java:141)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
at com.sun.j2ee.blueprints.supplier.tools.populate.PopulateServlet.populate(PopulateServlet.java:115)
at com.sun.j2ee.blueprints.supplier.tools.populate.PopulateServlet.doPost(PopulateServlet.java:81)
at com.sun.j2ee.blueprints.supplier.tools.populate.PopulateServlet.doGet(PopulateServlet.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:368)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
at java.lang.Thread.run(Thread.java:534)
-------------------------------------------
我在google上也没有找到解决上面问题的方法,再加上我也没有太多时间去解决这些异常问题,所以在SUN的网站上下载了
J2EESDK1.4安装程序,该安装程序里面带有petstore1.4的例子,那就再试试1.4还有没有上面遇到的问题呢?
安装好J2EESDK1.4后,在安装目录下的/samples/blueprints/有petstore1.4的例子,和petstore1.3一样,里面有详细的
安装说明
a9ee
文档,按照文档的说明,在执行asant时遇到了下面的问题:
----------------------------------------------
[echo] +---------------------------------------+
[echo] + Building OPC Application +
[echo] +---------------------------------------+
compile:
[javac] Compiling 10 source files to D:/Sun/AppServer/samples/blueprints/pet
store1.4/src/apps/opc/build/classes
[javac]C:/Sun/AppServer/samples/blueprints/petstore1.4/src/apps/opc/src/com
/sun/j2ee/blueprints/opc/ejb/OrderApprovalMDB.java:123: cannot resolve symbol
[javac] symbol : class TransitionDelegateFactory
[javac] location: class com.sun.j2ee.blueprints.opc.ejb.OrderApprovalMDB
[javac] TransitionDelegateFactory tdf = new TransitionDelegateFactory();
[javac] ^
[javac] C:/Sun/AppServer/samples/blueprints/petstore1.4/src/apps/opc/src/com
/sun/j2ee/blueprints/opc/ejb/OrderApprovalMDB.java:123: cannot resolve symbol
[javac] symbol : class TransitionDelegateFactory
[javac] location: class com.sun.j2ee.blueprints.opc.ejb.OrderApprovalMDB
[javac] TransitionDelegateFactory tdf = new TransitionDelegateFactory();
[javac] ^
[javac] 2 errors
BUILD FAILED
C:/Sun/AppServer/samples/blueprints/petstore1.4/src/apps/opc/src/build.xml:
126: Compile failed; see the compiler error output for details.
----------------------------------------------
从上面的错误信息中可以知道,应该是编译的时候缺少TransitionDelegateFactory这个类,搜索petstore1.4
中的所有文件也没有找到TransitionDelegateFactory.*的文件。在google上搜索TransitionDelegateFactory后
发现,在petstore1.4中应该有TransitionDelegateFactory.java文件,而J2EESDK1.4自带的程序却没有这个文
件,这就是编译出错的原因。
在拷贝如下代码保存为TransitionDelegateFactory.java文件,存放在
petstore1.4/src/components/processmanager/src/com/sun/j2ee/blueprints/processmanager/transitions目录下:
--------------------------------------------------
public TransitionDelegateFactory() {
9 super();
10 }
11
12 public TransitionDelegate getTransitionDelegate(String className) throws TransitionException {
13 TransitionDelegate td = null;
14 try {
15 td = (TransitionDelegate)Class.forName(className).newInstance();
16 } catch (Exception e) {
17 throw new TransitionException(e);
18 }
19 return td;
20 }
21 }
---------------------------------------------------
重新用asant编译,编译成功。按照安装文档说明,把petstore1.4部署到服务器后运行一切正常,今天开始学习
petstore1.4的代码了。哈哈
参考网址:
http://jsourcery.com/output/sun/j2ee/1.4.1/samples/blueprints/petstore/1.4/com/sun/j2ee/blueprints/processmanager/transitions/TransitionDelegateFactory.source.html
http://csdn.eyeah.cn/3116/1110/1124/101226110.html
安装很顺利,但是程序在运行中会抛出异常,异常信息如下:
----------------------------------------
java.security.PrivilegedActionException: javax.servlet.ServletException: An erro
r occurred while evaluating custom action attribute "value" with value "${item.a
ttribute}": Unable to find a value for "attribute" in object of class "com.sun.j
2ee.blueprints.catalog.model.Item" using operator "."
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at com.sun.j2ee.blueprints.waf.view.template.tags.InsertTag.doEndTag(InsertTag.java:99)
at org.apache.jsp.template$jsp._jspService(template$jsp.java:159)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:431)
at org.apache.catalina.core.ApplicationDispatcher.access$0(ApplicationDispatcher.java:359)
at org.apache.catalina.core.ApplicationDispatcher$PrivilegedForward.ru(ApplicationDispatcher.java:130)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:347)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.insertTemplate(TemplateServlet.java:288)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.process(TemplateServlet.java:246)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.doGet(TemplateServlet.java:143)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at com.sun.j2ee.blueprints.signon.web.SignOnFilter.doFilter(SignOnFilter.java:133)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at com.sun.j2ee.blueprints.encodingfilter.web.EncodingFilter.doFilter(EncodingFilter.java:77)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:368)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
at java.lang.Thread.run(Thread.java:534)
Caused by: javax.servlet.ServletException:
4000
An error occurred while evaluating custom action attribute "value" with value "${item.attribute}": Unable to find a value for "attribute" in object of class "com.sun.j2ee.blueprints.catalog.model.Item" using operator "."
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:463)
at org.apache.jsp.product$jsp._jspService(product$jsp.java:1357)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
at org.apache.catalina.core.ApplicationDispatcher.access$1(ApplicationDispatcher.java:501)
at org.apache.catalina.core.ApplicationDispatcher$PrivilegedInclude.run(ApplicationDispatcher.java:146)
... 66 more
InsertTag:doEndTag caught: javax.servlet.ServletException: An error occurred while evaluating custom action attribute "value" with value "${item.attribute}": Unable to find a value for "attribute" in object of class "com.sun.j2ee.blueprints.catalog.model.Item" using operator "."
javax.servlet.ServletException: An error occurred while evaluating custom action
attribute "value" with value "${item.attribute}": Unable to find a value for "a
ttribute" in object of class "com.sun.j2ee.blueprints.catalog.model.Item" using
operator "."
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageCon
textImpl.java:463)
at org.apache.jsp.product$jsp._jspService(product$jsp.java:1357)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
at org.apache.catalina.core.ApplicationDispatcher.access$1(ApplicationDispatcher.java:501)
at org.apache.catalina.core.ApplicationDispatcher$PrivilegedInclude.run(ApplicationDispatcher.java:146)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at com.sun.j2ee.blueprints.waf.view.template.tags.InsertTag.doEndTag(InsertTag.java:99)
at org.apache.jsp.template$jsp._jspService(template$jsp.java:159)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:431)
at org.apache.catalina.core.ApplicationDispatcher.access$0(ApplicationDispatcher.java:359)
at org.apache.catalina.core.ApplicationDispatcher$PrivilegedForward.run(
ApplicationDispatcher.java:130)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:347)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.insertTemplate(TemplateServlet.java:288)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.process(TemplateServlet.java:246)
at com.sun.j2ee.blueprints.waf.view.template.TemplateServlet.doGet(TemplateServlet.java:143)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at com.sun.j2ee.blueprints.signon.web.SignOnFilter.doFilter(SignOnFilter.java:133)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at com.sun.j2ee.blueprints.encodingfilter.web.EncodingFilter.doFilter(EncodingFilter.java:77)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:368)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
at java.lang.Thread.run(Thread.java:534)
----------------------------------------
而在J2EESDK1.3.1的日志记录中提示错误:
-------------------------------------------
javax.ejb.ObjectNotFoundException: No database row for primary key
at com.sun.ejb.persistence.PartitionImpl.ejbFindByPrimaryKey(PartitionImpl.java:722)
at com.sun.j2ee.blueprints.supplier.inventory.ejb.InventoryEJB_PM.ejbFindByPrimaryKey InventoryEJB_PM.java:115)
at com.sun.j2ee.blueprints.supplier.inventory.ejb.InventoryEJB_PM_LocalHomeImpl.findByPrimaryKey(InventoryEJB_PM_LocalHomeImpl.java:67)
at com.sun.j2ee.blueprints.supplier.tools.populate.InventoryPopulator.createInventory(InventoryPopulator.java:105)
at com.sun.j2ee.blueprints.supplier.tools.populate.InventoryPopulator.access$000(InventoryPopulator.java:50)
at com.sun.j2ee.blueprints.supplier.tools.populate.InventoryPopulator$1.create(InventoryPopulator.java:76)
at com.sun.j2ee.blueprints.supplier.tools.populate.XMLDBHandler.endElement(XMLDBHandler.java:141)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
at com.sun.j2ee.blueprints.supplier.tools.populate.PopulateServlet.populate(PopulateServlet.java:115)
at com.sun.j2ee.blueprints.supplier.tools.populate.PopulateServlet.doPost(PopulateServlet.java:81)
at com.sun.j2ee.blueprints.supplier.tools.populate.PopulateServlet.doGet(PopulateServlet.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:368)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
at java.lang.Thread.run(Thread.java:534)
-------------------------------------------
我在google上也没有找到解决上面问题的方法,再加上我也没有太多时间去解决这些异常问题,所以在SUN的网站上下载了
J2EESDK1.4安装程序,该安装程序里面带有petstore1.4的例子,那就再试试1.4还有没有上面遇到的问题呢?
安装好J2EESDK1.4后,在安装目录下的/samples/blueprints/有petstore1.4的例子,和petstore1.3一样,里面有详细的
安装说明
a9ee
文档,按照文档的说明,在执行asant时遇到了下面的问题:
----------------------------------------------
[echo] +---------------------------------------+
[echo] + Building OPC Application +
[echo] +---------------------------------------+
compile:
[javac] Compiling 10 source files to D:/Sun/AppServer/samples/blueprints/pet
store1.4/src/apps/opc/build/classes
[javac]C:/Sun/AppServer/samples/blueprints/petstore1.4/src/apps/opc/src/com
/sun/j2ee/blueprints/opc/ejb/OrderApprovalMDB.java:123: cannot resolve symbol
[javac] symbol : class TransitionDelegateFactory
[javac] location: class com.sun.j2ee.blueprints.opc.ejb.OrderApprovalMDB
[javac] TransitionDelegateFactory tdf = new TransitionDelegateFactory();
[javac] ^
[javac] C:/Sun/AppServer/samples/blueprints/petstore1.4/src/apps/opc/src/com
/sun/j2ee/blueprints/opc/ejb/OrderApprovalMDB.java:123: cannot resolve symbol
[javac] symbol : class TransitionDelegateFactory
[javac] location: class com.sun.j2ee.blueprints.opc.ejb.OrderApprovalMDB
[javac] TransitionDelegateFactory tdf = new TransitionDelegateFactory();
[javac] ^
[javac] 2 errors
BUILD FAILED
C:/Sun/AppServer/samples/blueprints/petstore1.4/src/apps/opc/src/build.xml:
126: Compile failed; see the compiler error output for details.
----------------------------------------------
从上面的错误信息中可以知道,应该是编译的时候缺少TransitionDelegateFactory这个类,搜索petstore1.4
中的所有文件也没有找到TransitionDelegateFactory.*的文件。在google上搜索TransitionDelegateFactory后
发现,在petstore1.4中应该有TransitionDelegateFactory.java文件,而J2EESDK1.4自带的程序却没有这个文
件,这就是编译出错的原因。
在拷贝如下代码保存为TransitionDelegateFactory.java文件,存放在
petstore1.4/src/components/processmanager/src/com/sun/j2ee/blueprints/processmanager/transitions目录下:
--------------------------------------------------
public TransitionDelegateFactory() {
9 super();
10 }
11
12 public TransitionDelegate getTransitionDelegate(String className) throws TransitionException {
13 TransitionDelegate td = null;
14 try {
15 td = (TransitionDelegate)Class.forName(className).newInstance();
16 } catch (Exception e) {
17 throw new TransitionException(e);
18 }
19 return td;
20 }
21 }
---------------------------------------------------
重新用asant编译,编译成功。按照安装文档说明,把petstore1.4部署到服务器后运行一切正常,今天开始学习
petstore1.4的代码了。哈哈
参考网址:
http://jsourcery.com/output/sun/j2ee/1.4.1/samples/blueprints/petstore/1.4/com/sun/j2ee/blueprints/processmanager/transitions/TransitionDelegateFactory.source.html
http://csdn.eyeah.cn/3116/1110/1124/101226110.html
相关文章推荐
- 解决apcu-bc在安装中出现的问题。 今天在编译安装apcu-bc时出现了:apc.so: undefined symbol: zif_apcu_store in Unknown on line 0
- LAMP 1.4 PHP编译安装问题解决
- 解决Mac OS 下编译Hadoop Annotations 程序包com.sun.javadoc找不到问题
- 解决com.sun等包编译不过去的问题
- Android ADT无法编译生成R.java的问题解决方法
- 一招一个文件解决ndk编译文件Android.mk配置的所有问题
- 解决问题:编译Latex遇到 file ended while scanning use of \@xdblarg or \@frac
- 编译《Pedestrian detection at 100 frames per second 》代码遇到的问题与解决方法
- 解决使用Maven项目,无法正确编译的问题
- 《UNIX环境高级编程》编译问题彻底解决方案
- 编译LDD第三版中scullc代码时遇到的问题及解决方法
- LSD_SLAM编译问题解决
- linux 编译内核几个常见问题解决方法
- ubuntu10.04 无法编译 yaf 的问题解决
- Linux/CentOS 升级C基本运行库CLIBC的注意事项(当想解决GLIBC_2.x找不到的编译问题)
- 【COCOS2DX-LUA 脚本开发之十四】解决自定义CPP类通过TOLUA++ BINDING LUACOCOS2D后编译到ANDROID运行黑屏(没有调用自定义CPP类)的问题!
- 解决WINCE6.0新建工程编译出错的问题
- 命令行下cl.exe编译链接的问题及解决方法
- 20120409 问题已经解决,debian6 上编译 android ics4.0编译用时:...
- 解决VS2010编译工程速度慢的问题