JasperReports no working sample
I've couldn't find a working sample with Jasper Reports
The sample in the jaspers projects site are not what i've expected to find.
I need somethig like a Hello Report. Or even better a report to a query from a database.
I've tried some guidelines from googling but still have this execptions:
net.sf.jasperreports.engine.JRException: Error compiling report java source files : E:\workspace\JasperReport\Simple_Report_1198053556890_895855.java
at net.sf.jasperreports.engine.design.JRJavacCompiler.compileClasses(JRJavacCompiler.java:93)
at net.sf.jasperreports.engine.design.JRAbstractClassCompiler.compileUnits(JRAbstractClassCompiler.java:67)
at net.sf.jasperreports.engine.design.JRAbstractCompiler.compileReport(JRAbstractCompiler.java:190)
at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:220)
at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:153)
at JasperReportsIntro.main(JasperReportsIntro.java:20)
Caused by: java.io.IOException: Cannot run program "javac": CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at net.sf.jasperreports.engine.design.JRJavacCompiler.compileClasses(JRJavacCompiler.java:62)
... 5 more
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
... 9 more
http://www.ensode.net/jasperreports_intro.html
this is the jrxml file
<?xml version="1.0"?>
<!DOCTYPE jasperReport
PUBLIC "-//JasperReports//DTD Report Design//EN"
"http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport name="Simple_Report">
<detail>
<band height="20">
<staticText>
<reportElement x="180" y="0" width="200" height="20"/>
<text><![CDATA[Hello World!]]></text>
</staticText>
</band>
</detail>
</jasperReport>
this is my source code
import java.util.HashMap;
import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
public class JasperReportsIntro
public static void main(String[] args)
JasperReport jasperReport;
JasperPrint jasperPrint;
try
jasperReport = JasperCompileManager.compileReport("basicreport.jrxml");
jasperPrint = JasperFillManager.fillReport(jasperReport, new HashMap(), new JREmptyDataSource());
JasperExportManager.exportReportToPdfFile(jasperPrint,"simple_report.pdf");
catch (JRException e)
e.printStackTrace();
}
Similar Messages
-
Portletizing ADF Faces - Portlet Unavailable - Is there a Working Sample?
Hi,
It seems I have run into a similar issue as some people before me. I have watched all samples, read all relevant forum threads and yet I cannot solve my problem.
I have created a very simple ADF Faces applications that uses DataBinding - it displays records from a database table in an af:table component based on ADF BC. I have created the page, added the Portlet Faces Bridge library to the project, created the portlet.xml, copied and pasted and configured the Portlet.xml contents for my Portlet. Deployment is to a local yet standalone WebCenter containing OC4J instance. Note: deploying to the preconfigured OC4J also did not work.
When I register the Portletproducer, consume the portlet in an otherwise empty JSF page and run that page, I get the Portlet Unavailable message in the page. The error log is shown below.
I am wondering where to go from here, what can I try to analyze? And also: is there a working sample available for download of an ADF Faces based portlet that can successfully be consumed by an application?
portlet.xml:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<portlet-app version="1.0" xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">
<portlet>
<description>Publisher List Portlet</description>
<portlet-name>Publist</portlet-name>
<display-name>Publisher List Portlet</display-name>
<portlet-class>oracle.portlet.server.bridges.jsf.FacesPortlet
</portlet-class>
<init-param>
<name>DefaultPage.view</name>
<value>/PublisherList.jspx</value>
</init-param>
<init-param>
<name>BridgeLifecycleListeners</name>
<value>
oracle.portlet.server.bridges.jsf.adf.ADFFacesBridgeLifecycleListener,
oracle.portlet.server.bridges.jsf.adf.BindingFacesBridgeLifecycleListener
</value>
</init-param>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
<portlet-info>
<title>Publisher List Portlet</title>
<short-title>PubList</short-title>
</portlet-info>
</portlet>
</portlet-app>Error log:
INFO: Using the ProviderURI /mdssys/ViewController/public_html/untitled1.jspx that is returned from custom provider for processing requests.
07/03/29 13:31:14 java.net.SocketTimeoutException: Read timed out
07/03/29 13:31:14 at java.net.SocketInputStream.socketRead0(Native Method)
07/03/29 13:31:14 at java.net.SocketInputStream.read(SocketInputStream.java:129)
07/03/29 13:31:14 at HTTPClient.BufferedInputStream.fillBuff(BufferedInputStream.java:192)
07/03/29 13:31:14 at HTTPClient.BufferedInputStream.read(BufferedInputStream.java:112)
07/03/29 13:31:14 at HTTPClient.StreamDemultiplexor.read(StreamDemultiplexor.java:322)
07/03/29 13:31:14 at HTTPClient.RespInputStream.read(RespInputStream.java:170)
07/03/29 13:31:14 at HTTPClient.RespInputStream.read(RespInputStream.java:129)
Mar 29, 2007 1:31:14 PM oracle.portlet.client.utils.PortletLogger warning
WARNING: Timing out task: [email protected]
07/03/29 13:31:14 at HTTPClient.Response.readResponseHeaders(Response.java:1002)
07/03/29 13:31:14 at HTTPClient.Response.getHeaders(Response.java:718)
07/03/29 13:31:14 at HTTPClient.Response.getStatusCode(Response.java:268)
07/03/29 13:31:14 at HTTPClient.RetryModule.responsePhase1Handler(RetryModule.java:92)
07/03/29 13:31:14 at HTTPClient.HTTPResponse.handleResponse(HTTPResponse.java:771)
07/03/29 13:31:14 at HTTPClient.HTTPResponse.getStatusCode(HTTPResponse.java:204)
07/03/29 13:31:14 at oracle.portlet.client.connection.wsrp.HTTPClientTransport.invoke(HTTPClientTransport.java:178)
07/03/29 13:31:14 at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:175)
07/03/29 13:31:14 at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112)
07/03/29 13:31:14 at oracle.portlet.wsrp.v2.soap.runtime.WSRP_v2_Markup_Binding_SOAP_Stub.getMarkup(WSRP_v2_Markup_Binding_SOAP_Stub.java:238)
07/03/29 13:31:14 at oracle.portlet.wsrp.v2.WSRP_v2_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_v2_Markup_PortTypeJaxbToSoap.java:80)
07/03/29 13:31:14 at oracle.portlet.wsrp.v2.ServerToWSRPv2.getMarkup(ServerToWSRPv2.java:13461)
07/03/29 13:31:14 at oracle.portlet.client.connection.wsrp.ActivityServerWrapper.getMarkup(ActivityServerWrapper.java:1330)
07/03/29 13:31:14 at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMarkupPipe.java:116)
07/03/29 13:31:14 at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.pre(WSRPGetMarkupPipe.java:52)
07/03/29 13:31:14 at oracle.portlet.client.service.pipeline.PipeContext.internalExecute2(PipeContext.java:516)
07/03/29 13:31:14 at oracle.portlet.client.service.pipeline.PipeContext.internalExecute(PipeContext.java:403)
07/03/29 13:31:14 at oracle.portlet.client.service.pipeline.PipeContextRunnable.run(PipeContextRunnable.java:24)
07/03/29 13:31:14 at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:431)
07/03/29 13:31:14 at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
07/03/29 13:31:14 at oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker.runTask(ModifiedThreadPoolExecutor.java:398)
07/03/29 13:31:14 at oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker.run(ModifiedThreadPoolExecutor.java:423)
07/03/29 13:31:14 at java.lang.Thread.run(Thread.java:595)
Mar 29, 2007 1:31:14 PM oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer preRender
SEVERE: oracle.adf.model.portlet.binding.PortletBindingException: Unable to get portlet response (time-out) for portlet binding PublisherListPortlet1_1.
at oracle.adf.model.portlet.binding.PortletBinding.getPortletRendition(PortletBinding.java:471)
at oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer.preRender(PortletRenderer.java:417)
at oracle.adfinternal.view.faces.renderkit.html.customizable.ShowDetailFrameRenderer.encodeBegin(ShowDetailFrameRenderer.java:227)
at oracle.adf.view.faces.component.UIXComponentBase.encodeBegin(UIXComponentBase.java:593)
at oracle.adfinternal.view.faces.renderkit.RenderUtils.encodeRecursive(RenderUtils.java:39)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeChild(CoreRenderer.java:242)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeAllChildren(CoreRenderer.java:265)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent(PanelPartialRootRenderer.java:65)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.renderContent(BodyRenderer.java:117)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll(PanelPartialRootRenderer.java:147)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.encodeAll(BodyRenderer.java:60)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeEnd(CoreRenderer.java:169)
at oracle.adf.view.faces.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:624)
at javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:645)
at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:568)
at oracle.adf.view.faces.webapp.UIXComponentTag.doEndTag(UIXComponentTag.java:100)
at mdssys.viewcontroller._public__html._untitled1_jspx._jspService(_untitled1_jspx.java:102)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.compileAndServe(JspPageTable.java:724)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:414)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:598)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:522)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.mds.jsp.MDSJSPFilter.doFilter(Unknown Source)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:622)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:286)
at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:50)
at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:192)
at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:197)
at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:157)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
at java.lang.Thread.run(Thread.java:595)
Caused by: oracle.portlet.client.container.PortletTimeoutException
at oracle.portlet.client.service.pipeline.PipeContext.handleTimeout(PipeContext.java:1040)
at oracle.portlet.client.service.pipeline.PipeContextRunnable.doTimeout(PipeContextRunnable.java:42)
at oracle.portlet.client.service.pipeline.TimeoutMonitor$TaskTracker.stopTask(TimeoutMonitor.java:304)
at oracle.portlet.client.service.pipeline.TimeoutMonitor$1.run(TimeoutMonitor.java:240)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)Thanks for any help!
LucasHello
I am trying to portlize an hello world ADF application but am unable to do so because of the situation describe below. I have tried all the options given on this post but nothing seems to resolve the issue.
I have followed the instructions of portelizing at http://download-east.oracle.com/otndocs/tech/webcenter/files/owcs_10132_bridge_viewlet.html
A simple portlets without AFD works fine in oc4h or webcenter or jboss, but when I include ADF in the project then none of the application server or the container works
I am using jdeveloper 10.1.3.2.0 and the embedded webcenter oc4j for this test
I have two projects
1) ui where the ADF appplication is and
2) test1 where the producer is registered and is tested
In ui I have a simple jsp page untitled1.jsp with just one adf component (ADF Command Link)
Here is the source of untitled1.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/portlet" prefix="adfp"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/customizable" prefix="cust"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh"%>
<f:view>
<afh:html binding="#{backing_untitled1.html1}" id="html1">
<afh:head title="Pixel Home" binding="#{backing_untitled1.head1}"
id="head1">
<meta http-equiv="Content-Type"
content="text/html; charset=windows-1252"/>
<style type="text/css">
body {
background-color: #ffffff;
a:link { color: #2121ff; }
</style>
</afh:head>
<afh:body binding="#{backing_untitled1.body1}" id="body1">
<h:form binding="#{backing_untitled1.form1}" id="form1">
<af:commandLink text="commandLink 1"
binding="#{backing_untitled1.commandLink1}"
id="commandLink1"/>
</h:form>
</afh:body>
</afh:html>
</f:view>
After deploying this in webcenter I can see the WSDL page
http://localhost:6688/AdfFacesDemo1/portlets/wsrp1?WSDL
<?xml version = '1.0' encoding = 'UTF-8'?>
<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:bind="urn:oasis:names:tc:wsrp:v1:bind" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:oasis:names:tc:wsrp:v1:wsdl">
<import namespace="urn:oasis:names:tc:wsrp:v1:bind" location="wsrp_v1_bindings.wsdl"/>
<wsdl:service name="WSRP_v1_Service">
<wsdl:port binding="bind:WSRP_v1_Markup_Binding_SOAP" name="WSRPBaseService">
<soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPBaseService"/>
</wsdl:port>
<wsdl:port binding="bind:WSRP_v1_ServiceDescription_Binding_SOAP" name="WSRPServiceDescriptionService">
<soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPServiceDescriptionService"/>
</wsdl:port>
<wsdl:port binding="bind:WSRP_v1_Registration_Binding_SOAP" name="WSRPRegistrationService">
<soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPRegistrationService"/>
</wsdl:port>
<wsdl:port binding="bind:WSRP_v1_PortletManagement_Binding_SOAP" name="WSRPPortletManagementService">
<soap:address location="http://localhost:6688/AdfFacesDemo1/portlets/WSRPPortletManagementService"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
In test1 project I have a simple jsp page test1.jsp and here is the source
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/portlet" prefix="adfp"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/customizable" prefix="cust"%>
<%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh"%>
<f:view>
<afh:html binding="#{backing_test1.html1}" id="html1">
<afh:head title="Pixel Home" binding="#{backing_test1.head1}" id="head1">
<meta http-equiv="Content-Type"
content="text/html; charset=windows-1252"/>
<style type="text/css">
body {
background-color: #ffffff;
a:link { color: #2121ff; }
</style>
</afh:head>
<afh:body binding="#{backing_test1.body1}" id="body1">
<h:form binding="#{backing_test1.form1}" id="form1">
<adfp:portlet value="#{bindings.ADFFacesDemoPortlet11_1}"
portletType="/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7"
id="portlet1" binding="#{backing_test1.portlet1}"/>
</h:form>
</afh:body>
</afh:html>
</f:view>
<%-- oracle-jdev-comment:auto-binding-backing-bean-name:backing_test1--%>
I have already registered a producer called[b] ADFFacesDemoProducer in test1 project with 300 sec as timeout. Now when I run the test1.jsp page in oc4j container I get the following error. I have tried all the options in this forum and nothing worked.
Target URL -- http://131.225.95.117:8988/PortletTest6-test1-context-root/faces/test1.jsp
07/08/06 11:31:04 Oracle Containers for J2EE 10g (10.1.3.1.1) initialized
Warning : Not able to reserve 2048M memory for the heap. Heap reduced to 890M
Aug 6, 2007 11:31:17 AM oracle.adf.share.config.ADFConfigFactory findOrCreateADFConfig
INFO: oracle.adf.share.config.ADFConfigFactory Reading META-INF/adf-config.xml
07/08/06 11:31:18 PortletContainer portletTechnologies set to '{oracle.portlet.client.containerimpl.web.WebPortletTechnologyConfig,oracle.portlet.client.containerimpl.wsrp.WSRPPortletTechnologyConfig}' from adf-config.xml
07/08/06 11:31:18 PortletContainer defaultTimeout set to '20' from adf-config.xml
07/08/06 11:31:18 PortletContainer minimumTimeout set to '1' from adf-config.xml
07/08/06 11:31:18 PortletContainer maximumTimeout set to '60' from adf-config.xml
07/08/06 11:31:18 PortletContainer resourceProxyPath set to '/resourceproxy' from adf-config.xml
Aug 6, 2007 11:31:20 AM oracle.adfinternal.view.faces.application.ViewHandlerImpl _checkTimestamp
INFO: ADF Faces is running with time-stamp checking enabled. This should not be used in a production environment. See the oracle.adf.view.faces.CHECK_FILE_MODIFICATION property in WEB-INF/web.xml
Aug 6, 2007 11:31:20 AM oracle.portlet.client.utils.PortletLogger info
INFO: Portlet Client MBeans registered
Aug 6, 2007 11:31:25 AM oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer preRender
SEVERE: oracle.adf.model.portlet.binding.PortletBindingException: Unable to get portlet response (Internal Error) for portlet binding ADFFacesDemoPortlet11_1
at oracle.adf.model.portlet.binding.PortletBinding.getPortletRendition(PortletBinding.java:514)
at oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer.preRender(PortletRenderer.java:417)
at oracle.adfinternal.view.faces.renderkit.html.customizable.ShowDetailFrameRenderer.encodeBegin(ShowDetailFrameRenderer.java:227)
at oracle.adf.view.faces.component.UIXComponentBase.encodeBegin(UIXComponentBase.java:593)
at oracle.adfinternal.view.faces.renderkit.RenderUtils.encodeRecursive(RenderUtils.java:39)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeChild(CoreRenderer.java:242)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeAllChildren(CoreRenderer.java:265)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent(PanelPartialRootRenderer.java:65)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.renderContent(BodyRenderer.java:117)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll(PanelPartialRootRenderer.java:147)
at oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.encodeAll(BodyRenderer.java:60)
at oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeEnd(CoreRenderer.java:169)
at oracle.adf.view.faces.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:624)
at javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:645)
at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:568)
at oracle.adf.view.faces.webapp.UIXComponentTag.doEndTag(UIXComponentTag.java:100)
at test1.jspService(_test1.java:122)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:598)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:522)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:712)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:286)
at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:50)
at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:192)
at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:197)
at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:157)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
at java.lang.Thread.run(Thread.java:595)
Caused by: oracle.portlet.client.container.PortletRemoteException: oracle.portlet.server.container.OperationFailedException: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
at oracle.portlet.client.techimpl.wsrp.WSRPBaseTerminalPipe.processException(WSRPBaseTerminalPipe.java:37)
at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMarkupPipe.java:185)
at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.pre(WSRPGetMarkupPipe.java:52)
at oracle.portlet.client.service.pipeline.PipeContext.internalExecute2(PipeContext.java:516)
at oracle.portlet.client.service.pipeline.PipeContext.internalExecute(PipeContext.java:403)
at oracle.portlet.client.service.pipeline.PipeContextRunnable.run(PipeContextRunnable.java:24)
at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:431)
at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
at oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker.runTask(ModifiedThreadPoolExecutor.java:398)
at oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker.run(ModifiedThreadPoolExecutor.java:423)
... 1 more
Caused by: oracle.portlet.server.container.OperationFailedException: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
at oracle.portlet.wsrp.v1.ServerToWSRPv1.getMarkup(ServerToWSRPv1.java:1093)
at oracle.portlet.client.connection.wsrp.ActivityServerWrapper.getMarkup(ActivityServerWrapper.java:1330)
at oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMarkupPipe.java:116)
... 9 more
Caused by: oracle.portlet.wsrp.v1.OperationFailedException: oracle.portlet.wsrp.v1.soap.OperationFailed
at oracle.portlet.wsrp.v1.WSRP_v1_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_v1_Markup_PortTypeJaxbToSoap.java:101)
at oracle.portlet.wsrp.v1.ServerToWSRPv1.getMarkup(ServerToWSRPv1.java:977)
... 11 more
Caused by: oracle.portlet.wsrp.v1.soap.OperationFailed
at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_PortType_getMarkup_Fault_SOAPSerializer.deserializeDetail(WSRP_v1_Markup_PortType_getMarkup_Fault_SOAPSerializer.java:269)
at oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserializeSOAP11(SOAPFaultInfoSerializer.java:132)
at oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserialize(SOAPFaultInfoSerializer.java:94)
at oracle.j2ee.ws.common.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:180)
at oracle.j2ee.ws.common.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:147)
at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_Binding_SOAP_Stub._readBodyFaultElement(WSRP_v1_Markup_Binding_SOAP_Stub.java:456)
at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:321)
at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112)
at oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_Binding_SOAP_Stub.getMarkup(WSRP_v1_Markup_Binding_SOAP_Stub.java:76)
at oracle.portlet.wsrp.v1.WSRP_v1_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_v1_Markup_PortTypeJaxbToSoap.java:78)
... 12 more
Then I tried to deploy the test1.jsp as a WAR file in the webcenter OC4J and tried this URL
http://localhost:6688/AdfFacesDemoTest1/test1.jsp
but it gave me this error
500 Internal Server Error
Servlet error: An exception occurred. The current application deployment descriptors do not allow for including it in this response. Please consult the application log for details.
When I tried this URL I got a diffrent error. Googling this did not help at all
http://localhost:6688/AdfFacesDemoTest1/faces/test1.jsp
07/08/06 11:33:26 PortletContainer portletTechnologies set to '{oracle.portlet.client.containerimpl.web.WebPortletTechnologyConfig,oracle.portlet.client.containerimpl.wsrp.WSRPPortletTechnologyConfig}' from adf-config.xml
07/08/06 11:33:26 PortletContainer defaultTimeout set to '20' from adf-config.xml
07/08/06 11:33:26 PortletContainer minimumTimeout set to '1' from adf-config.xml
07/08/06 11:33:26 PortletContainer maximumTimeout set to '60' from adf-config.xml
07/08/06 11:33:26 PortletContainer resourceProxyPath set to '/resourceproxy' from adf-config.xml
2007-08-06 11:33:58.843 ERROR oracle.portlet.client.persistence.PersistenceNotFoundException: mdsId=/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7.pxml not found
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.get(MDSPersistenceContext.java:587)
at oracle.portlet.client.beanimpl.persistence.PersistenceBeanFactory.getExisting(PersistenceBeanFactory.java:226)
at oracle.portlet.client.beanimpl.persistence.PersistenceBeanContext.getExisting(PersistenceBeanContext.java:83)
at oracle.portlet.client.containerimpl.PublicFactoryImpl.get(PublicFactoryImpl.java:248)
at oracle.portlet.client.containerimpl.PublicFactoryImpl.get(PublicFactoryImpl.java:258)
at oracle.portlet.client.containerimpl.PortletContainerImpl.getPortlet(PortletContainerImpl.java:227)
at oracle.adf.model.portlet.binding.PortletBinding.prepareModel(PortletBinding.java:801)
at oracle.adf.model.portlet.binding.PortletBinding.refresh(PortletBinding.java:606)
at oracle.adf.model.binding.DCBindingContainerDef$1RegionBindingAdapter.refresh(DCBindingContainerDef.java:1011)
at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:2455)
at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2260)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:99)
at oracle.adf.controller.faces.lifecycle.FacesPageLifecycle.prepareModel(FacesPageLifecycle.java:73)
at oracle.adf.controller.v2.lifecycle.Lifecycle$8.execute(Lifecycle.java:210)
at oracle.adf.controller.v2.lifecycle.Lifecycle.executePhase(Lifecycle.java:116)
at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java:29)
at oracle.adf.controller.faces.lifecycle.ADFPhaseListener$4.after(ADFPhaseListener.java:327)
at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:90)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:254)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
Caused by: oracle.mds.core.MetadataNotFoundException: No metadata found for metadata object "/oracle/adf/portlet/AdfFacesDemoProducer_1186417722625/ap/E0default_3c036e4c_0114_1000_8003_83e15f750fa7.pxml"
at oracle.mds.core.MetadataObject.getBaseMO(Unknown Source)
at oracle.mds.core.MDSSession.getBaseMO(Unknown Source)
at oracle.mds.core.MDSSession.getMutableMO(Unknown Source)
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.getBaseMutableMO(MDSPersistenceContext.java:1143)
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.get(MDSPersistenceContext.java:577)
... 40 more
Here is my portlet.xml in ui project
<?xml version="1.0" encoding="ISO-8859-1"?>
<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">
<portlet>
<description>ADF Faces Demo Portlet 1</description>
<portlet-name>ADFFacesDemo1</portlet-name>
<display-name>ADF Faces Demo portlet 1</display-name>
<portlet-class>oracle.portlet.server.bridges.jsf.FacesPortlet
</portlet-class>
<init-param>
<name>DefaultPage.view</name>
<value>/untitled1.jsp</value>
</init-param>
<init-param>
<name>BridgeLifecycleListeners</name>
<value>
oracle.portlet.server.bridges.jsf.adf.ADFFacesBridgeLifecycleListener,
oracle.portlet.server.bridges.jsf.adf.BindingFacesBridgeLifecycleListener
</value>
</init-param>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
<portlet-info>
<title>ADF Faces Demo Portlet 1</title>
<short-title>ADFFacesDemo1</short-title>
</portlet-info>
</portlet>
</portlet-app>
web.xml in ui project (where the AFD application is)
<?xml version = '1.0' encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
<description>Empty web.xml file for Web Application</description>
<filter>
<filter-name>adfFaces</filter-name>
<filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>adfFaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>resources</servlet-name>
<servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resources</servlet-name>
<url-pattern>/adf/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>35</session-timeout>
</session-config>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
<extension>txt</extension>
<mime-type>text/plain</mime-type>
</mime-mapping>
</web-app>
web.xml in test1 project (where portlet producer is registered)
<?xml version = '1.0' encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
<description>Empty web.xml file for Web Application</description>
<context-param>
<param-name>CpxFileName</param-name>
<param-value>test1.DataBindings</param-value>
</context-param>
<context-param>
<param-name>oracle.mds.web-app-root</param-name>
<param-value>/test1/public_html</param-value>
</context-param>
<context-param>
<param-name>oracle.adf.view.faces.CHANGE_PERSISTENCE</param-name>
<param-value>oracle.adfinternal.view.faces.change.HybridChangeManager</param-value>
</context-param>
<filter>
<filter-name>adfFaces</filter-name>
<filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>
<filter>
<filter-name>adfBindings</filter-name>
<filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
</filter>
<filter>
<filter-name>mdsFilter</filter-name>
<filter-class>oracle.mds.jsp.MDSJSPFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>adfFaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<url-pattern>*.jspx</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<servlet-name>resourceproxy</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<servlet-name>adfportlet</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>mdsFilter</filter-name>
<servlet-name>jsp2</servlet-name>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>resources</servlet-name>
<servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>adfportlet</servlet-name>
<servlet-class>oracle.adfinternal.view.faces.renderkit.html.portlet.ADFPortletServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>resourceproxy</servlet-name>
<servlet-class>oracle.portlet.client.resourceproxy.adf.ADFPortletResourceServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>jsp2</servlet-name>
<servlet-class>oracle.jsp.runtimev2.JspServlet</servlet-class>
<init-param>
<param-name>tags_reuse_default</param-name>
<param-value>none</param-value>
</init-param>
<init-param>
<param-name>check_page_scope</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>debug_mode</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>page_provider</param-name>
<param-value>oracle.mds.jsp.MDSJSPProvider</param-value>
</init-param>
<init-param>
<param-name>page_repository</param-name>
<param-value>oracle.mds.jsp.MDSJSPProvider</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resources</servlet-name>
<url-pattern>/adf/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>adfportlet</servlet-name>
<url-pattern>/adfportlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>adfportlet</servlet-name>
<url-pattern>/adfportletfullpage</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>resourceproxy</servlet-name>
<url-pattern>/resourceproxy</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>jsp2</servlet-name>
<url-pattern>/*.jspx</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>35</session-timeout>
</session-config>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
<extension>txt</extension>
<mime-type>text/plain</mime-type>
</mime-mapping>
<service-ref xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<service-ref-name>service/WSRPServiceRefV1</service-ref-name>
<service-interface>javax.xml.rpc.Service</service-interface>
<wsdl-file>WEB-INF/wsdl/WSRP_v1_Service.wsdl</wsdl-file>
<jaxrpc-mapping-file>WEB-INF/WSRP_v1_Service-java-wsdl-mapping.xml</jaxrpc-mapping-file>
<service-qname xmlns:service-qname_ns__="urn:oasis:names:tc:wsrp:v1:wsdl">service-qname_ns__:WSRP_v1_Service</service-qname>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_Markup_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_ServiceDescription_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_Registration_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v1.soap.WSRP_v1_PortletManagement_PortType</service-endpoint-interface>
</port-component-ref>
</service-ref>
<service-ref xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<service-ref-name>service/WSRPServiceRefV2</service-ref-name>
<service-interface>javax.xml.rpc.Service</service-interface>
<wsdl-file>WEB-INF/wsdl/WSRP_v2_Service.wsdl</wsdl-file>
<jaxrpc-mapping-file>WEB-INF/WSRP_v2_Service-java-wsdl-mapping.xml</jaxrpc-mapping-file>
<service-qname xmlns:service-qname_ns__="urn:oasis:names:tc:wsrp:v2:wsdl">service-qname_ns__:WSRP_v2_Service</service-qname>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_Markup_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_ServiceDescription_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_Registration_PortType</service-endpoint-interface>
</port-component-ref>
<port-component-ref>
<service-endpoint-interface>oracle.portlet.wsrp.v2.soap.WSRP_v2_PortletManagement_PortType</service-endpoint-interface>
</port-component-ref>
</service-ref>
</web-app>
Can anyone help please
regards
Vijay -
Working sample of JSTL:xml?
Can someone send me a working sample war file using jstl:xml under JSTL 1.1/tomcat 5?
I think my JSP is right, but I tried it on tomcat-5.5.4, 5.0.28 with JDK1.4.2, JDK1.5.0. All of them give me [#document: null] result. There must be something wrong in my configuration.
If someone can send me a working war file, I would really appreciate.
My email address: [email protected]
Thanks!Okay, it is clear to me, you are thinking something that may be working is not, because you are testing incorrectly.
Doing a c:out of the variable returned from <xml:parse> and getting [#document: null] is not a sign that the xml document wasn't parsed. I am not sure exatly what the null part of the output means but...
Look at this code:
//Sidebar.xml
<?xml version="1.0"?>
<home_bar>
<bar_width>250</bar_width>
<button_height>30</button_height>
<button_width>200</button_width>
<button_img>images/norm_button.gif</button_img>
<button_list>
<button id="1">
<link_url>./</link_url>
<text>Home</text>
</button>
<button id="2">
<link_url>/Calendar</link_url>
<text>Calendar</text>
</button>
<button id="3">
<link_url>/Calendar/howto.jsp</link_url>
<text>How To Use the Calendar</text>
</button>
<button id="4">
<link_url>/Webmail</link_url>
<text>Webmail</text>
</button>
<button id="5">
<link_url>/Webmail/howto.jsp</link_url>
<text>Webmail HowTo</text>
</button>
<button id="6">
<link_url>/Web/howto.jsp</link_url>
<text>How To Make a Web Page</text>
</button>
<button id="7">
<link_url>/HTML/howto.jsp</link_url>
<text>Learn HTML</text>
</button>
<button id="8">
<link_url>/JS/howto.jsp</link_url>
<text>Learn JavaScript</text>
</button>
</button_list>
</home_bar>
//Sidebar.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
<c:import var="sideBarXml" url="Sidebar.xml" />
<x:parse doc="${sideBarXml}" var="sideBar" />
<%-- Show that the side bar was read --%>
<!-- Side Bar = <c:out value="${sideBar}"/> -->
<%-- End of Test Output --%>
<x:set var="theBar" select="$sideBar/home_bar"/>
<style type="text/css">
.sidebar
width : <x:out select="$theBar/bar_width"/>px;
float : left;
clear : left;
.button
background : transparent url(<x:out select="$theBar/button_img"/>) no-repeat scroll center;
height : <x:out select="$theBar/button_height"/>px;
width : <x:out select="$theBar/button_width"/>px;
cursor : pointer;
float : left;
clear : left;
text-align : center;
color : white;
</style>
<div class="sidebar">
<x:forEach select="$theBar/button_list/button" var="button" varStatus="status">
<div class="button" onclick="document.location='<x:out select="$button/link_url"/>';">
<x:out select="$button/text"/>
</div>
</x:forEach>
</div>
//index.jsp
<html>
<head>
<title>Showing JSTL:XML tags</title>
<style type="text/css">
DIV.content
disaplay: block;
float : left;
clear : right;
width : 500px;
font-family: Serif;
</style>
</head>
<body>
<jsp:include page="Sidebar.jsp"/>
<div class="content">
Just some things to show for the content of the JSP...
</div>
</body>
</html>
//WEB-INF/web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
version="2.4">
<display-name>XML Display Application</display-name>
</web-app>
//HTML Output
<html>
<head>
<title>Showing JSTL:XML tags</title>
<style type="text/css">
DIV.content
disaplay: block;
float : left;
clear : right;
width : 500px;
font-family: Serif;
</style>
</head>
<body>
<!-- Side Bar = [#document: null] -->
<style type="text/css">
.sidebar
width : 250px;
float : left;
clear : left;
.button
background : transparent url(images/norm_button.gif) no-repeat scroll center;
height : 30px;
width : 200px;
cursor : pointer;
float : left;
clear : left;
text-align : center;
color : white;
</style>
<div class="sidebar">
<div class="button" onclick="document.location='./';">
Home</div>
<div class="button" onclick="document.location='/Calendar';">
Calendar</div>
<div class="button" onclick="document.location='/Calendar/howto.jsp';">
How To Use the Calendar</div>
<div class="button" onclick="document.location='/Webmail';">
Webmail</div>
<div class="button" onclick="document.location='/Webmail/howto.jsp';">
Webmail HowTo</div>
<div class="button" onclick="document.location='/Web/howto.jsp';">
How To Make a Web Page</div>
<div class="button" onclick="document.location='/HTML/howto.jsp';">
Learn HTML</div>
<div class="button" onclick="document.location='/JS/howto.jsp';">
Learn JavaScript</div>
</div><div class="content">
Just some things to show for the content of the JSP...
</div>
</body>
</html>The WEB-INF/lib directory contains jstl.jar and standard.jar (JSTL 1.1.1 I think). Nothing but basic Tomcat 5.0.29 installed in the common directories. JDK1.4 installed.
Anyway, from the output, you can see in the comment inside the HTML source that the c:out for the parsed XML file reads [#document: null]. However, the XML was correctly parsed and generated the proper sidebar.
I know that if you do something like this:
<x:set var="theBar" select="$sideBar/home_bar"/>
<c:out value="${theBar}"/> you get [[home_bar: null]].
Also, if you do:
<x:out select="$sideBar"/> you will get all the data from the xml file (not the tags) printed out. -
Working Sample Code: File Download Servlet
Pardon the cross-posting (Java Servlet Technology), but when I was researching this problem I found alot of people asking this question in here as well as in the servlet forum. So I thought this code would be helpful here too.
Here is a complete working servlet for downloading virtually any type of file to a browser.
It uses a file called application.properties to specify the location of the folder where the files to be downloaded reside. Of course you could modify this to allow the users to select the location as well.
A sample URL to call the Servlet would look like this:
http://localhost/website/servlet/DownloadAssistant?YourFileName.ext
I tested this with varying filenames. It did have some issues if the file contained special characters like # symbol. This should be manageable however.
Hope someone finds this useful.
import java.io.*;
import java.util.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.zip.GZIPOutputStream;
public class DownloadAssistant extends HttpServlet
private static final String DIR = "dir";
private String separator;
private String root;
public DownloadAssistant()
Properties propFile = null;
FileInputStream in = null;
String JAVA_HOME = "C:\\jrun\\servers\\default\\filetest\\application.properties";
// Get a handle on the peoperties file
try{
in = new FileInputStream(JAVA_HOME);
propFile = new Properties();
propFile.load(in);
catch (IOException ignore){}
separator = "/";
// Get the directory from the application.properties file
// e.g. C:\\Temp\\Files\\
root = propFile.getProperty("app.directory");
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
processRequest(request, response);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
processRequest(request, response);
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
PrintWriter out = null;
ServletOutputStream stream = null;
GZIPOutputStream zipstream = null;
Object obj = null;
String s = "";
//determine if there is a filename appended to the url
// If so, then decode it
s = HttpUtils.getRequestURL(request).toString();
int i;
if((i = s.indexOf("?")) > 0)
s = s.substring(0, i);
String s1;
if((s1 = request.getQueryString()) == null)
s1 = "";
else
//s1 = decode(s1);
s1 = URLDecoder.decode(s1);
// No filename, so set contentType and generate error message
if(s1.length() == 0)
response.setContentType("text/html");
out = response.getWriter();
out.println("<html>");
out.println("<p>Could not get file name ");
out.println("</html>");
out.flush();
out.close();
return;
// Restriction while gaining access to the file
if(s1.indexOf(".." + separator) > 0)
response.setContentType("text/html");
out = response.getWriter();
out.println("<html>");
out.println("<br><br><br>Restrictions on filename");
out.println("</html>");
out.flush();
out.close();
return;
// Try to get a handle on the file
File file = new File(root + s1);
// Couldn't get the file, return an error message
if(file == null)
response.setContentType("text/html");
out = response.getWriter();
out.println("<html>");
out.println("<p>Could not read file: " + s1);
out.println("</html>");
out.flush();
out.close();
return;
// Either the file doesn't exist or it can't be read, return an error message
if(!file.exists() || !file.canRead())
response.setContentType("text/html");
out = response.getWriter();
out.println("<html><font face=\"Arial\" size=\"+1\">");
out.println("<p>Could not read file " + s1);
out.print("<br>Reasons are: ");
if(!file.exists())
out.println("file does not exist");
else
out.println("file is not readable at this moment");
out.println("</font></html>");
out.flush();
out.close();
return;
// Looks like we can read/access the file, determine its type
String s2 = request.getHeader("Accept-Encoding");
// Is this a zip file?
boolean flag = false;
if(s2 != null && s2.indexOf("gzip") >= 0)
flag = true;
flag = false;
if(flag)
response.setHeader("Content-Encoding", "gzip");
response.setHeader("Content-disposition", "attachment;filename=" + s1);
stream = response.getOutputStream();
zipstream = new GZIPOutputStream(stream);
downloadFile(root + s1, zipstream);
zipstream.close();
stream.close();
// It's not a zip file so treat it as any other file
else
response.setContentType("application/force-download");
response.setHeader("Content-disposition", "attachment;filename=" + s1);
stream = response.getOutputStream();
downloadFile(root + s1, stream);
stream.flush();
stream.close();
}// end processRequest()
// This method downloads the file to the browser
private void downloadFile(String s, OutputStream outstream)
String s1 = s;
byte abyte0[] = new byte[4096];
try
BufferedInputStream instream = new BufferedInputStream(new FileInputStream(s1));
int i;
while((i = instream.read(abyte0, 0, 4096)) != -1)
outstream.write(abyte0, 0, i);
instream.close();
catch(Exception _ex) { }
}//end downloadFile()
public void init(ServletConfig servletconfig)
throws ServletException
super.init(servletconfig);
String s;
if((s = getInitParameter("dir")) == null)
s = root;
separator = System.getProperty("file.separator");
if(!s.endsWith(separator))
s = s + separator;
root = s;
}//end init()
}//end servlet()Yes - it is useful
-
JasperReports not working in EAR/EJB/JSF application
Hi,
When trying to compile a report using JasperReports, I get this exception. I have an EAR application, pdf generation happens in an EJB module, called by a WAR (Glassfish 3, JSF 2).
Any clue?
org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'jar:file:/C:/Users/Yannick%2520Majoros/dev/GestempsEE/dist/gfdeploy/GestempsEE/lib/jasperreports-3.7.0.jar!/net/sf/jasperreports/engine/dtds/jasperreport.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:2541)
at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:2528)
at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getSchemaDocument(XSDHandler.java:1825)
at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:531)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.processJAXPSchemaSource(XMLSchemaLoader.java:766)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:550)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.findSchemaGrammar(XMLSchemaValidator.java:2408)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1753)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:685)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:767)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3095)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:922)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
at org.apache.commons.digester.Digester.parse(Digester.java:1647)
at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:235)
... 73 moreI did as you said:
Sanity Test:-
java -classpath .;MyEJB.jar LoadTest
java.lang.ClassNotFoundException: com.myexample.IXMLSerializer
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at LoadTest.main(LoadTest.java:5)
Now if I run the same command as follows
java -classpath MyEJB.jar;.;dep1.jar LoadTest
it works (including the dep1.jar in classpath)
com.myexample.IXMLSerializer
MyEJB.jar has the following structure:
|
└───META-INF\Manifest.mf
Manifest-Version: 1.0
Class-Path: dep1.jar
dep1.jar is found in the same directory where I executed the sanity test command (since I unpacked the ear file) -
Working Sample Code: FileDownload Servlet
Here is a complete working servlet for downloading virtually any type of file to a browser.
It uses a file called application.properties to specify the location of the folder where the files to be downloaded reside. Of course you could modify this to allow the users to select the location as well.
A sample URL to call the Servlet would look like this:
http://localhost/website/servlet/DownloadAssistant?YourFileName.ext
I tested this with varying filenames. It did have some issues if the file contained special characters like # symbol. This should be manageable however.
Hope someone finds this useful.
import java.io.*;
import java.util.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.zip.GZIPOutputStream;
public class DownloadAssistant extends HttpServlet
private static final String DIR = "dir";
private String separator;
private String root;
public DownloadAssistant()
Properties propFile = null;
FileInputStream in = null;
String JAVA_HOME = "C:\\jrun\\servers\\default\\filetest\\application.properties";
// Get a handle on the peoperties file
try{
in = new FileInputStream(JAVA_HOME);
propFile = new Properties();
propFile.load(in);
catch (IOException ignore){}
separator = "/";
// Get the directory from the application.properties file
// e.g. C:\\Temp\\Files\\
root = propFile.getProperty("app.directory");
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
processRequest(request, response);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
processRequest(request, response);
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
PrintWriter out = null;
ServletOutputStream stream = null;
GZIPOutputStream zipstream = null;
Object obj = null;
String s = "";
//determine if there is a filename appended to the url
// If so, then decode it
s = HttpUtils.getRequestURL(request).toString();
int i;
if((i = s.indexOf("?")) > 0)
s = s.substring(0, i);
String s1;
if((s1 = request.getQueryString()) == null)
s1 = "";
else
//s1 = decode(s1);
s1 = URLDecoder.decode(s1);
// No filename, so set contentType and generate error message
if(s1.length() == 0)
response.setContentType("text/html");
out = response.getWriter();
out.println("<html>");
out.println("<p>Could not get file name ");
out.println("</html>");
out.flush();
out.close();
return;
// Restriction while gaining access to the file
if(s1.indexOf(".." + separator) > 0)
response.setContentType("text/html");
out = response.getWriter();
out.println("<html>");
out.println("<br><br><br>Restrictions on filename");
out.println("</html>");
out.flush();
out.close();
return;
// Try to get a handle on the file
File file = new File(root + s1);
// Couldn't get the file, return an error message
if(file == null)
response.setContentType("text/html");
out = response.getWriter();
out.println("<html>");
out.println("<p>Could not read file: " + s1);
out.println("</html>");
out.flush();
out.close();
return;
// Either the file doesn't exist or it can't be read, return an error message
if(!file.exists() || !file.canRead())
response.setContentType("text/html");
out = response.getWriter();
out.println("<html><font face=\"Arial\" size=\"+1\">");
out.println("<p>Could not read file " + s1);
out.print("<br>Reasons are: ");
if(!file.exists())
out.println("file does not exist");
else
out.println("file is not readable at this moment");
out.println("</font></html>");
out.flush();
out.close();
return;
// Looks like we can read/access the file, determine its type
String s2 = request.getHeader("Accept-Encoding");
// Is this a zip file?
boolean flag = false;
if(s2 != null && s2.indexOf("gzip") >= 0)
flag = true;
flag = false;
if(flag)
response.setHeader("Content-Encoding", "gzip");
response.setHeader("Content-disposition", "attachment;filename=" + s1);
stream = response.getOutputStream();
zipstream = new GZIPOutputStream(stream);
downloadFile(root + s1, zipstream);
zipstream.close();
stream.close();
// It's not a zip file so treat it as any other file
else
response.setContentType("application/force-download");
response.setHeader("Content-disposition", "attachment;filename=" + s1);
stream = response.getOutputStream();
downloadFile(root + s1, stream);
stream.flush();
stream.close();
}// end processRequest()
// This method downloads the file to the browser
private void downloadFile(String s, OutputStream outstream)
String s1 = s;
byte abyte0[] = new byte[4096];
try
BufferedInputStream instream = new BufferedInputStream(new FileInputStream(s1));
int i;
while((i = instream.read(abyte0, 0, 4096)) != -1)
outstream.write(abyte0, 0, i);
instream.close();
catch(Exception _ex) { }
}//end downloadFile()
public void init(ServletConfig servletconfig)
throws ServletException
super.init(servletconfig);
String s;
if((s = getInitParameter("dir")) == null)
s = root;
separator = System.getProperty("file.separator");
if(!s.endsWith(separator))
s = s + separator;
root = s;
}//end init()
}//end servlet()Instead of hardcoding the directory where the files are located, I keep that in a file called application.properties.
there is a property there which looks like this
app.directory=C:\\Temp\Files\\
It's easier to change this rather than recompiling the servlet.
I also use that file to hold things like the JDBC driver I will be using as well as other application specific properties I don't want to hardcode.
HTH -
How to know the customer item in Basket in Adventure Works sample db
Dear all,
In AW sample DB there is a ShopingCartItem table where user can place product they want to buy.
In from that ShopingCardItem there seems to be no information a USer ID which place them in or is there somewhere ?
regardsIt is not a complete, fully functional database. There is no ShoppingCart table for example.
AdventureWorks database is a very excellent demo database. Good job Microsoft!
Kalman Toth Database & OLAP Architect
SELECT Video Tutorials 4 Hours
New Book / Kindle: Exam 70-461 Bootcamp: Querying Microsoft SQL Server 2012 -
Working sample of a RisPort SelectCmDevice query
Would anyone mind to share a sample? The documentation is pretty much useless and since Cisco still doesn't understand what a webservice is (no code generation with axis, jax-ws and wsdl.exe) I'm stuck having to do it the hard way yet again, but whatever I pieced together from documentation and posts here always returns into a 500 error.
Here ya go. Complete pain in the rear. Parsing the response is real fun too. I ended up creating a custom AXL post function since the wsdl is fuzzy at best.
<?xml version="1.0" encoding="utf-8"?>
http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://schemas.cisco.com/ast/soap/">
http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:CmSelectionCriteria"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="http://schemas.cisco.com/ast/soap/">
10
Any
255
Registered
Name
http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns3:SelectItem"
xmlns:ns3="http://schemas.cisco.com/ast/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
SEP001E4A3F90A1 -
AdfActionEvent and AdfPage.PAGE.findComponent not working - Sample Provided
Ladies and Gents,
Using JDev 11.1.2.3.0.
I just can't get this simple example to work. On page load, I'm calling ADF's find component by id method, which for some reason, returns null. I can do the same thing by using javascript's getElementById and that finds the component just fine. However, if I use the getElementById and then push that into the AdfActionQueue, I get a different error 'Error: Object doesn't support property or method 'queueEvent''
Can anyone see off-hand what I'm doing wrong here?
<?xml version='1.0' encoding='UTF-8'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1" xmlns:f="http://java.sun.com/jsf/core"
xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
<jsp:directive.page contentType="text/html;charset=UTF-8"/>
<f:view>
<af:document title="home.jspx" id="d1">
<af:form id="f1">
<af:commandButton text="commandButton 1" id="myRefreshButton" action="#{myBean.onAction}"/>
</af:form>
<af:resource type="javascript" source="/resources/js/jqPlot/jquery.min.js"/>
<af:resource type="javascript" source="/resources/js/jqPlot/jquery.jqplot.min.js"/>
<af:resource type="javascript" source="/resources/js/jqPlot/plugins/jqplot.canvasTextRenderer.min.js"/>
<af:resource type="javascript" source="/resources/js/jqPlot/plugins/jqplot.canvasAxisLabelRenderer.min.js"/>
<af:resource type="javascript" source="/resources/js/jqPlot/plugins/jqplot.dragable.min.js"/>
<af:resource type="css" source="/resources/js/jqPlot/jquery.jqplot.min.css"/>
<af:resource type="javascript">
function doClick() {
var clientId = 'myRefreshButton'; // id of the button in the page's HTML code
// This returns null
// var button = AdfPage.PAGE.findComponent(clientId);
// button is found but then receive error
var button = document.getElementById(clientId);
AdfActionEvent.queue(button, true);
$(document).ready(function () {
doClick();
</af:resource>
</af:document>
</f:view>
</jsp:root>Hi Frank,
I agree manipulating the DOM directly is generally bad (I've watched those training videos!), but after doing some decent searching (with quite a bit of trial and error) I'm not sure there exists a purely ADF way of achieving a solution.
Inside of a region, I have a master (Companies) and a child (Orders) table relationship. Within the same region, I also have a charting tool which displays the monthly order totals of the selected company. A customer can select a company and see the related monthly orders in the orders table along with a graph showing the visual sales. If I were using ADF DVTs, this would be pretty straightforward, but I am not. To get this to work then, I have a few obstacles.
1) On jsff load, the chart must initialize with the displayed monthly order data.
2) On new customer select, the chart must refresh with the newly displayed order data.
The easiest way to update the chart would be to hook into the orders table component and, whenever the shown data refreshes or initializes, also refresh the chart. However, I'm not sure where the hook is located for that so I'm back to my two obstacles.
For the first obstacle, ADF does not (to my knowledge) have an "on jsff load" option so I'm stuck with jquery's load and corresponding id lookup functions. In my case, that load function looks for a hidden output text component's value whose getter returns the order table row's current monthly data. This is somewhat of a hack that, in effect, calls a managed bean method from javascript. Now that I have that data, I can input that into my chart and refresh.
For the second obstacle, I simply hook into the customer table's selection listener and after the current row is updated, retrieve the order table's current monthly data, refresh chart, etc.
The question I asked is a simplified version of overcoming the two obstacles above and while my jquery $('#myRefreshButton')[0] is extremely brittle, it was only meant as a quick demonstration. One could make it less brittle by iterating through the returned array, making sure the desired element contained any regions / naming containers and had the myRefreshButton portion at the end of the id string.
What would be the desired ADF way of achieving this result? Do you do something with your Data Visualization Tools that might be applicable here? Is there a way to hook into the child table and refresh my chart any time child table refreshes or initializes? -
Export will not work - sample query pasted
I have a complex query whose result needs to be exported into xls format. The export will simply not work. Right-Clicking on the result grid and selecting Export Data > any format will simply do nothing. A simplified version of the code is pasted below:
SELECT
CASE WHEN 'TODAY' = 'TODAY'
THEN
(SELECT 'TOMORROW' FROM DUAL)
ELSE 'TODAY'
END TEST1
FROM DUAL;
While this version works as expected:
SELECT
CASE WHEN 'TODAY' = 'TODAY'
THEN
'TOMORROW'
ELSE 'TODAY'
END TEST1
FROM DUAL;
Any idea why?
Version:
=====
CVS Version Internal to Oracle SQL Developer (client-only)
Java(TM) Platform 1.5.0_06
Oracle IDE 1.5.4.59.40
Versioning Support 1.5.4.59.40Oh yeah, that's what I've found too. It seems that any query that includes a subquery cannot be exported. The error message I get differs based on the query, but it appears that when it re-runs the query to export the data it doesn't always see the "outer" query, or not all of it anyway. I'll get error messages like "invalid identifier" or "not a GROUP BY expression" when the query runs perfectly fine in the SQL worksheet. Or sometimes I don't get an error, it just doesn't pop up the "Export Data" parameters dialog.
One workaround if your result set is small is to select all the cells in the query results data grid by clicking and dragging, and then you can copy and paste into Excel. Or, as mentioned above, create a view with your complex query and then just do a "select * from viewname" and export that.
I sure hope this gets fixed in the next release. -
EJB(CMP) A Working Sample
Can any of u please help me to get a Sample Code / Steps to create a BMP bean , generate its Deployed Jar , and Finally deploy it in Oracle 9i App. Server .
I was using Visual Age Earlier , now Switched Over to JDeveloper .
Thanks .
nullthere are couple of demoscripts on buiding CMP entity beans on the technet.
check out http://technet.oracle.com/products/jdev/htdocs/cmpdemo2/cmpdemo2.html http://technet.oracle.com/products/jdev/htdocs/fullcmpdemo/cmpdemo.html
raghu -
I have a working sample of UIX using PKI certificate for Authentication
If you are interested please email me at [email protected] The working version uses the X509 certificate and the dynamic JDBC authentication in JDeveloper 9.0.5.2.
I'm planning to post a zip file to a blog where it can be downloaded. Since I don't have a blog of my own (nor do I have the time to maintain one), I'm looking for someone to host it for me.
See ya,
Connie AdamsHi,
Long shot, but...
Open Audio Midi Setup in Applications>Utilities, see the input & output options & KHz setting there, some things will change it for their own use, then not set it back. -
I need a working sample project using core graphics in XCode 6
I've got an old os x app that does not compile in Xcode 6 because several basic things have been deleted. For now I am OK with 4.6.3 but I'll need to make a jump to 6.0 at some point. Just need an example combining kiosk mode and core graphics that builds in Xcode 6.0 and OS 10.10. Any ideas?
...yes, I knew that there are no more updates. I was hoping for a super-secret workaround...since the project was originally created in the exact same version that I'm trying to open it in, there might be a bug that someone has figured out.
Precisely why I use PPro now. FCP is a headache at best...but this...there is no logical reason why this would happen.
...borrowed a friends macbook pro w/ FCP 7, it opened...migrated the XML files to PPro...all done now. -
I need urgrnt help in working with JasperReports
I just want to know how can I pass a query to a JasperReport. I've just gone thru the JasperReports.sourceforge.net but couldn't make it. Please if someone can make it.
Thanx for the interest.Well if you have looked at a sample JRXML file (it is the begining point for generating a report using JasperReports), that comes with the JasperReports, you will see the query (with in <queryString> </queryString> tags).
One such sample file I have come across is under %JasperReports Home%/demo/samples/query/QueryReport.jrxml -
Sample code that allows System.inheritedChannel() to work?
Hi,
I would like to create a C program, which will launch a Java runtime. I want the C program to open a listening socket, then pass that listening socket to the started Java VM.
I should be able to do this, and have the java VM inherit the listening socket, and then in the Java program, I should be able to get the listening socket with System.inheritedChannel().
In theory, anyway, all the docs seem to state that this is possible. But the problem is that I haven't found any code that does this. I'm not sure how I should setup the listening socket so that its the one that is picked by the inheritedChannel() call. What happens if my C program has multiple sockets, both connected and listening? How is the correct one determined? And do I have to have any special implementation of SelectorProvider?
Finding a working sample would really help me figure this out. Or, just any program that already uses this mechanism somewhere.
Can someone point me to such a sample?
Thanks,
GregThe following 'c' code will first create a LISTEN socket then pass it to the Java application following. This, with the previous post show both passing connected clients as-well-as service sockets to java via System.inheritedChannel().
#include "stdnet.h" // platform specific network headers
int
main(int argc,char *argv[])
pid_t childPid = (pid_t)-1;
// setServiceOnHostPort() creates bound LISTEN socket
int service = setServiceOnHostPort("127.0.0.1",13333);
fprintf(stderr,"service socket is %d, on port %d\n",
service,getServicePort(service));
// create child process in which to start the jvm
if ((pid_t)0 > (childPid = fork()))
fprintf(stderr,"Cannot fork(), errno = %d\n",errno);
exit(-1);
} else if ((pid_t)0 != childPid) {
// close replace the tty fd with our service (LISTEN) socket
dup2(service,STDIN_FILENO);
// close the others, just in case
dup2(-1,STDOUT_FILENO);
dup2(-1,STDERR_FILENO);
// stdin == service so we can close service now
close(service);
execvp(argv[1],&argv[1]);
/* Failed to start application, pause before exiting w/ 123 */
_exit(123);
} /* if ((pid_t)0 > (childPid = fork())) */
// parent can leave now, of course its better to see if jvm actially
// started here by looking for child's exit code of 123.
return(0);
} /* int main(int argc,char argv[]) /
Now the java code.
import java.io.File;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
public class jInetdApp
public static void main(String[] args)
throws Exception
System.setOut(new PrintStream(new File(
System.getProperty("user.dir") + "/java-inetd.out")));
System.setErr(new PrintStream(new File(
System.getProperty("user.dir") + "/java-inetd.err")));
Object stdInObject = (Object)System.inheritedChannel();
// started w/ connected socket
if (stdInObject instanceof SocketChannel)
SocketChannel channel =
(SocketChannel) stdInObject;
Socket socket = channel.socket();
System.err.println("channel: " + channel);
System.err.println("socket: " + socket);
PrintStream ps =
new PrintStream(socket.getOutputStream());
ps.println("Hello world");
ps.flush();
ps.close();
socket.shutdownInput();
socket.shutdownOutput();
socket.close();
// started with service (LISTEN) socket
} else if (stdInObject instanceof ServerSocketChannel) {
ServerSocketChannel channel =
(ServerSocketChannel) stdInObject;
ServerSocket socket =
(ServerSocket)channel.socket();
System.err.println("channel: " + channel);
System.err.println("socket: " + socket);
Thread.sleep(30000);
socket.close();
// started from command line??
} else {
System.err.println("stdInObject: " + stdInObject);
} if (stdInObject instanceof SocketChannel)
System.err.flush();
System.out.flush();
} // public static void main(String[] args)
} // public class jInetdApp
I hope this is helps.
cj
Maybe you are looking for
-
Report Name:Pending GR's Against Quality Inspection(Urgent)
Hi Frds, here i wants display GR Number,GR Date,Material code,Material Desc,UOM,Material quantity,Plant,Vendor Code,Vendor Name. Now i want table and field name for Quantity ..Give some Tips to do this report .. Urgent. BY Pari Vendhan.R
-
Can't open Aperture after Snow Leopard to Mavericks upgrade.
Upgraded to Mavericks from Snow Leopard. Now, the Aperture icon in the dock is greyed out. When I try to open it I get the message that I have Aperture 3.2.4 and it can't be opened with Mavericks. I purchased Aperture from the App Store when I had Sn
-
How to Close an iCloud Account
Hello, While configuring the Find My Friends app on iOS 5, I accidentally created a new iCloud account. Since I will not be using this account, I want to close it, meanning I want it to be erased from the iCloud servers. How do I do that ? Thanks.
-
Calendar itmes not showing end date in list view/when opened
Hi, Got a client with a very strange issue with meetings. Few of the meetings are not showing end date after accepting those although he can see all meetings in calendar. I have already checked below on his machine switched the month view to ''low de
-
IPod Touch 4G Battery Life Is Awful on v4.3.2
Hi there, I own a iPod Touch 4G on v4.3.2 & the battery life on it is awful & decreases way too fast. Please do something about it please, Apple. Maybe release a new update to under-clock the device..? I don't know, something to increase the battery