Jmf on web start

Hi friends,
Currently I am dealing with a project which includes distribution of JMF(java media framework) over the web. For this purpose, web start seems a nice approach.
Moreover, JMF requires some native libraries which should be deployed from web start. I had problems at this point and strongly need help. I could not achieve deploying these libraries from web start hence running JMF from web start.
I had no problem at running JMF from local JRE in standard java desktop applications. This means that required dlls can be successfully loaded and linked from standard applications but not from web start applications.
I have read lots of forums and web sites and did what is said (at least I think I did), but could not solve the problem. Most probably, I need to do some simple configurations but at this point I totally don�t know what to do. Below, I want to mention shortly what I did to deploy JMF over the web start and the exceptions and error I faced with. I will be very happy if you find something wrong in these steps and tell me what to do:
1. I jared all dlls related with the JMF : To do that, from Eclipse ee, I selected about 15 jmf dlls, right clicked them, chose �export� as jar, and obtained a jar from these dlls.
2. Then, I signed them using keytool and jarsigner tools of java to give the project unrestricted access for media processing.
3. Then, I added this jar to the webcontent folder of the project with other jars and files.
4. After that, I added following tag to the jnlp file of the project: <nativelib href="http://193.140.214.29:8080/jmfproject/jmf-native-all.jar"/>
5. I also added required System.loadLibrary() methods to my code in the order which gives no problem. (In the forums I read previously, these codes are required to load native dlls to the environment in which project will be run.)
Note: I deployed project on Apache Tomcat Server.
Below, I give my complete jnlp file;
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0" codebase="http://193.140.214.29:8080/jmfproject" href="http://193.140.214.29:8080/jmfproject/jmfproject.jnlp">
<information>
<title>jmfproject</title>
<vendor>Techneon ltd.</vendor>
<icon href="http://193.140.214.29:8080/jmfproject/techneon.jpg" kind="default"/>
<icon href="http://193.140.214.29:8080/jmfproject/techneon.jpg" kind="splash"/>
</information>
<security>
<all-permissions/>
</security>
<resources OS = "Windows">
<j2se version="1.6.0_03" href="http://java.sun.com/products/autodl/j2se"/>
<jar href="http://193.140.214.29:8080/jmfproject/jmf.jar"/>
<nativelib href="http://193.140.214.29:8080/jmfproject/jmfnative.jar"/>
</resources>
<application-desc main-class="JmfprojectStarter"/>
</jnlp>
And below is the cronical exception I faced with:
java.lang.NullPointerException
at Jmfproject.<init>(Jmfproject.java:241)
at JmfprojectStarter.main(JmfprojectStarter.java:9)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

Hi Andrew,
Thank you very much for your attention,
My simple project contains 2 classes: JmfprojectStarter, which contains only main method and Jmfproject which is a swing GUI
Below is JmfprojectStarter:
+public class JmfprojectStarter {+
+     /**+
+     * @param args+
+     */+
+     public static void main(String[] args) {+
+          +
+          new Jmfproject();+
+     }+
+}+
And below is the System.loadlibrary part of the Jmfproject class:
+/*+
* Java(TM) SE 6 version.
some import statements
+@SuppressWarnings("serial")+
+public class Jmfproject extends JFrame implements ControllerListener {+
+     some gui component declarations+
+     +
+public Jmfproject() {+
+     +
+     System.loadLibrary("jmacm");+
+     System.loadLibrary("jmdaudc");+
+     System.loadLibrary("jmmpegv");+
+     System.loadLibrary("jmutil");+
+     System.loadLibrary("jmvcm");+
+     System.loadLibrary("jmvfw");+
+     System.loadLibrary("jmmpa");+
+     System.loadLibrary("jmmci");+
+     System.loadLibrary("jmdaud");+
+     System.loadLibrary("jmcvid");+
+     System.loadLibrary("jmam");+
+     System.loadLibrary("jmjpeg");+
+     System.loadLibrary("jmh263enc");+
+     System.loadLibrary("jmh261");+
+     System.loadLibrary("jmgdi");+
+     System.loadLibrary("jmg723");+
+     System.loadLibrary("jmddraw");+
+     System.loadLibrary("jmvh263");+
+     System.loadLibrary("jmfjawt");+
+     System.loadLibrary("jmgsm");+
+.+
+.+
+.+
some gui component initiliazations
+.+
+.+
+.+
below is code block where I got the exception(statement in bold throws the exception)
+try {+
+          URL mediaURL = getClass().getResource("media/ungreedy.wav");+
+          player = Manager.createPlayer(mediaURL);+
+          player.addControllerListener(this);+
+     }catch (Exception e) {e.printStackTrace();statusField.setText("player error");}+
player.start();+
As you see, System.loadlibrary methods are not called from main method(although from the same thread). Moreover, I guess there is no problem in the order of method calls since I changed the order untill I do not get "dependency" errors which are thrown when one dll depends on some other one. But in some way, these dlls can not be used by web start according to the part of exception thrown :
at sun.reflect.*NativeMethodAccessorImpl.invoke0*(Native Method)
at sun.reflect.*NativeMethodAccessorImpl.invoke*(Unknown Source)
at sun.reflect.*DelegatingMethodAccessorImpl.invoke*(Unknown Source)
I have no idea at this point:(
Thank you very much again
Edited by: alperyesilyurt on Jan 9, 2008 5:35 AM

Similar Messages

  • Capturing audio using jmf from web start

    Hi everybody,
    Currently im working on a project related with audio capturing in client side. Clients will access the application from web start. jmf will be used to capture audio. Additionally, i dont want users to install jmf.
    At first, for testing purposes i wrote a small and simple program that only captures audio and plays it again. It works fine as a standalone application. However, it did not work if i deploy the same program on the web start, doing all required configurations carefully for web start deployment.
    I found the problem is that required capture devices could not be detected when the program is run from web start.
    I searched forums and internet and made some trials to solve and idendify the problem. i want to share you the results:
    At first , i installed jmf to my machine, some jars (jmf.jar, sound.jar,...) and a jmf.properties file are extracted to a directory in my machine. Then, after copying jmf.jar and jmf.properties file to some folder, i uninstalled jmf. Then i created a simple project for testing purposes that captures audio and plays it back.i created this project from eclipse IDE and and set its classbath to the folder which contains only jmf.jar and jmf.properties. It runs successfully. However, if i remove jmf.properties from this file, project does not run, no device can be found. I strongly think, this means that, this jmf.properties file is necessary to detect any audio capture device and hence to run any jmf program that captures auido.
    If i deployed the same project from web start, it did not work as i mentioned, since no audio device can be found because of the lack of jmf.properties file. However, if i install jmf again, since the jmf.properties is created, the project runs from web start too. The interesting thing is that, if i uninstall jmf
    but only create the directory that only contains jmf.properties again, project still runs from web start. If i remove this file from that directory projects does not run again.
    It seems that, this jmf.properties file is impornt for detecting audio capturer devices. It is created in the phase of jmf installation by jmfregistry or jmfinit and is unique for the machine.
    Finally, i conclude that in order to run any project that captures auido from web start without installing jmf, a jmf.properties file should be created for each client machine automatically (in a silent way) before execution which means that jmfregistry or jmfinit should be run silently before execution to create this jmf.properties. Is there anybody that knows antying to  achieve this ?
    Any suggestions about the topic rather than the answer to the specific question above will also be appreciated greatly. Thanks a lot in advance.

    Hi
    I am working on a similar requirement. Please let me know if you have a solution.
    Thanks in advance.

  • Latest Java 7 update 25 prevents JMF from working in Web Start application

    Has anyone else had a problem getting the JMF to work in a Web Start application since updating to Java 7 update 25?
    I can successfully run our application on my local machine via Eclipse and the webcam image loads. When I run my application from Web Start it does not load any image and errors out with the following error:
    java.lang.NullPointerException
        at javax.swing.RepaintManager.currentManager(Unknown Source)
        at javax.swing.RepaintManager.currentManager(Unknown Source)
        at javax.swing.RepaintManager.currentManager(Unknown Source)
        at javax.swing.JComponent.repaint(Unknown Source)
        at java.awt.Component.repaint(Unknown Source)
        at java.awt.Component.repaint(Unknown Source)
        at com.sun.media.renderer.video.AWTRenderer.doProcess(AWTRenderer.java:236)
        at com.sun.media.renderer.video.BasicVideoRenderer.process(BasicVideoRenderer.java:118)
        at com.sun.media.BasicRendererModule.processBuffer(BasicRendererModule.java:727)
        at com.sun.media.BasicRendererModule.scheduleBuffer(BasicRendererModule.java:499)
        at com.sun.media.BasicRendererModule.doProcess(BasicRendererModule.java:400)
        at com.sun.media.RenderThread.process(BasicRendererModule.java:1114)
        at com.sun.media.util.LoopThread.run(LoopThread.java:135)
    Any help would be appreciated
    Thanks,
    Mike

    Hi - I have exactly the same issue. Referring to Java 1.7_25 release note, i have also included permissions/codebase attributes in jmf jar manifest file but it did not help. With the permissions attributes i dont see the warning missing permissions, but it not solve the actual problem. JMF throws following NPE exception in my case
    Exception in thread "JMF thread: SendEventQueue: com.sun.media.content.unknown.Handler" java.lang.NullPointerException
        at sun.awt.image.FetcherInfo.getFetcherInfo(Unknown Source)
        at sun.awt.image.ImageFetcher.add(Unknown Source)
        at sun.awt.image.InputStreamImageSource.startProduction(Unknown Source)
        at sun.awt.image.InputStreamImageSource.addConsumer(Unknown Source)
        at sun.awt.image.InputStreamImageSource.startProduction(Unknown Source)
        at sun.awt.image.ImageRepresentation.startProduction(Unknown Source)
        at sun.awt.image.ImageRepresentation.prepare(Unknown Source)
        at sun.awt.SunToolkit.prepareImage(Unknown Source)
        at java.awt.Component.prepareImage(Unknown Source)
        at java.awt.ImageMediaEntry.startLoad(Unknown Source)
        at java.awt.MediaEntry.getStatus(Unknown Source)
        at java.awt.ImageMediaEntry.getStatus(Unknown Source
    Please let me know if you have any solution for the above problem. Appreciated your help.
    Thanks
    Sri

  • JMF installation with Web Start

    Hi,
    Does anybody know whether it is possible to install the JMF (Java Media FW) through Java Web Start?
    Thanks

    arimghosh wrote:
    When I am running the program from console it can detect all devices well and record video and audio both.Well, actually, JMF doesn't "detect" anything. It reads from the JMF Registry, which is a pre-detected list of devices that were on your system the last time the actual detection code was run (normally, that means when you installed JMF).
    So, the problem is that using Java Web Start, you're not able to read the JMF registry. Most likely, your web start application doesn't have proper access to the JMF_HOME environmental variable (which tells JMF where to find the JMF installed on the system, and thus be able to find the registry...)

  • Java Web Start and BC4J/OC4J

    Hi all developers,
    This is my first forum message, and I hope that there is someone that can help me.
    Problem: A JClient using BC4J in a 3tier situation work perfectly well when run from within the IDE, however using the Web Start Wizard and deployed to the Application server and run from Java Web Start, it does not work.
    Is there any HowTo or documentation on the right settings, roles, security, procedures, etc. with regard to Jclient, BC4J and Java WebStart?
    Thanks
    Craig

    Ant build file which does the signing
    Please make sure you make a backup of the existing bc4jlibs.ear before you use this build file.
    <!--Ant build file to create bc4jlibs.ear. bc4jlibs.ear is used in
    JClient WebStart application
    <property name="jdeveloper.root" value="D:\JDev9i\"/>
    <property name="ear.file.name" value="D:\JDev9i\jlib\bc4jlibs.ear"/>
    <property name="alias" value="mykey"/>
    <property name="storepass" value="secretcode"/>
    -->
    <project name="buildear" basedir="." default="ear">
    <!--define home for the libraries-->
    <property name="lib.home" value="${jdeveloper.root}/lib"/>
    <property name="ord.home" value="${jdeveloper.root}/ord"/>
    <property name="j2ee.home" value="${jdeveloper.root}/j2ee"/>
    <property name="jlib.home" value="${jdeveloper.root}/jlib"/>
    <property name="jdev.home" value="${jdeveloper.root}/jdev"/>
    <property name="vbroker4.home" value="${jdeveloper.root}/vbroker4"/>
    <property name="jdbc.home" value="${jdeveloper.root}/jdbc"/>
    <property name="BC4J.home" value="${jdeveloper.root}/BC4J"/>
    <!--temp directories-->
    <property name="temp.dir" value="${jdeveloper.root}/jdev/temp"/>
    <property name="temp.war.dir" value="${temp.dir}/warroot"/>
    <property name="temp.ear.dir" value="${temp.dir}/earroot"/>
    <!--define war names for the various libraries-->
    <property name="lib.war.name" value="${temp.ear.dir}/lib.war"/>
    <property name="ord.war.name" value="${temp.ear.dir}/ord.war"/>
    <property name="j2ee.war.name" value="${temp.ear.dir}/j2ee.war"/>
    <property name="jlib.war.name" value="${temp.ear.dir}/jlib.war"/>
    <property name="jdev.war.name" value="${temp.ear.dir}/jdev.war"/>
    <property name="vbroker4.war.name" value="${temp.ear.dir}/vbroker4.war"/>
    <property name="jdbc.war.name" value="${temp.ear.dir}/jdbc.war"/>
    <property name="BC4J.war.name" value="${temp.ear.dir}/BC4J.war"/>
    <taskdef name="appxml" classname="oracle.jbo.dt.jclient.ant.taskdefs.ApplicationXmlGenerator"/>
    <target name="init">
    <mkdir dir="${temp.dir}"/>
    <mkdir dir="${temp.war.dir}"/>
    <mkdir dir="${temp.ear.dir}"/>
    </target>
    <target name="clean">
    <delete dir="${temp.dir}"/>
    </target>
    <target name="sign_jar" if="signing.enabled">
    <signjar jar="${jarname}" alias="${alias}" storepass="${storepass}"/>
    </target>
    <!-- create war for lib jars.-->
    <target name="lib_war" depends="init">
    <copy todir="${temp.war.dir}">
    <fileset dir="${lib.home}">
    <include name="xmlparserv2.jar"/>
    </fileset>
    <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient">
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </copy>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/xmlparserv2.jar"/>
    </antcall>
    <jar jarfile="${temp.ear.dir}/lib.war">
    <fileset dir="${temp.war.dir}">
    <include name="**/*.jar"/>
    <include name="**/*.zip"/>
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </jar>
    <delete dir="${temp.war.dir}"/>
    </target>
    <!-- create war for ord jars.-->
    <target name="ord_war" depends="init">
    <copy todir="${temp.war.dir}">
    <fileset dir="${ord.home}">
    <include name="jlib/jmf.jar"/>
    <include name="jlib/ordhttp.jar"/>
    <include name="jlib/ordim.jar"/>
    </fileset>
    <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient">
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </copy>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/jmf.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/ordhttp.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/ordim.jar"/>
    </antcall>
    <jar jarfile="${temp.ear.dir}/ord.war">
    <fileset dir="${temp.war.dir}">
    <include name="**/*.jar"/>
    <include name="**/*.zip"/>
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </jar>
    <delete dir="${temp.war.dir}"/>
    </target>
    <!-- create war for j2ee jars.-->
    <target name="j2ee_war" depends="init">
    <copy todir="${temp.war.dir}">
    <fileset dir="${j2ee.home}">
    <include name="home/lib/ejb.jar"/>
    <include name="home/lib/jaas.jar"/>
    <include name="home/lib/jms.jar"/>
    <include name="home/lib/jndi.jar"/>
    <include name="home/lib/jta.jar"/>
    <include name="home/oc4jclient.jar"/>
    </fileset>
    <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient">
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </copy>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/home/lib/ejb.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/home/lib/jaas.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/home/lib/jms.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/home/lib/jndi.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/home/lib/jta.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/home/oc4jclient.jar"/>
    </antcall>
    <jar jarfile="${temp.ear.dir}/j2ee.war">
    <fileset dir="${temp.war.dir}">
    <include name="**/*.jar"/>
    <include name="**/*.zip"/>
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </jar>
    <delete dir="${temp.war.dir}"/>
    </target>
    <!-- create war for jlib jars.-->
    <target name="jlib_war" depends="init">
    <copy todir="${temp.war.dir}">
    <fileset dir="${jlib.home}">
    <include name="LW_PfjBean.jar"/>
    <include name="bigraphbean.jar"/>
    <include name="jdev-cm.jar"/>
    </fileset>
    <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient">
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </copy>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/LW_PfjBean.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/bigraphbean.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jdev-cm.jar"/>
    </antcall>
    <jar jarfile="${temp.ear.dir}/jlib.war">
    <fileset dir="${temp.war.dir}">
    <include name="**/*.jar"/>
    <include name="**/*.zip"/>
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </jar>
    <delete dir="${temp.war.dir}"/>
    </target>
    <!-- create war for jdev jars.-->
    <target name="jdev_war" depends="init">
    <copy todir="${temp.war.dir}">
    <fileset dir="${jdev.home}">
    <include name="lib/jdev-rt.jar"/>
    </fileset>
    <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient">
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </copy>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/jdev-rt.jar"/>
    </antcall>
    <jar jarfile="${temp.ear.dir}/jdev.war">
    <fileset dir="${temp.war.dir}">
    <include name="**/*.jar"/>
    <include name="**/*.zip"/>
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </jar>
    <delete dir="${temp.war.dir}"/>
    </target>
    <!-- create war for vbroker4 jars.-->
    <target name="vbroker4_war" depends="init">
    <copy todir="${temp.war.dir}">
    <fileset dir="${vbroker4.home}">
    <include name="lib/vbjorb.jar"/>
    </fileset>
    <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient">
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </copy>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/vbjorb.jar"/>
    </antcall>
    <jar jarfile="${temp.ear.dir}/vbroker4.war">
    <fileset dir="${temp.war.dir}">
    <include name="**/*.jar"/>
    <include name="**/*.zip"/>
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </jar>
    <delete dir="${temp.war.dir}"/>
    </target>
    <!-- create war for jdbc jars.-->
    <target name="jdbc_war" depends="init">
    <copy todir="${temp.war.dir}">
    <fileset dir="${jdbc.home}">
    <include name="lib/classes12.jar"/>
    <include name="lib/nls_charset12.jar"/>
    </fileset>
    <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient">
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </copy>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/classes12.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/nls_charset12.jar"/>
    </antcall>
    <jar jarfile="${temp.ear.dir}/jdbc.war">
    <fileset dir="${temp.war.dir}">
    <include name="**/*.jar"/>
    <include name="**/*.zip"/>
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </jar>
    <delete dir="${temp.war.dir}"/>
    </target>
    <!-- create war for BC4J jars.-->
    <target name="BC4J_war" depends="init">
    <copy todir="${temp.war.dir}">
    <fileset dir="${BC4J.home}">
    <include name="jlib/bc4jctvb.jar"/>
    <include name="jlib/bc4jdatum.jar"/>
    <include name="jlib/bc4jdomgnrc.jar"/>
    <include name="jlib/bc4jimjui.jar"/>
    <include name="jlib/bc4jmtvb.jar"/>
    <include name="jlib/bc4jui.jar"/>
    <include name="lib/bc4jct.jar"/>
    <include name="lib/bc4jctejb.jar"/>
    <include name="lib/bc4jdomorcl.jar"/>
    <include name="lib/bc4jimdomains.jar"/>
    <include name="lib/bc4jmt.jar"/>
    <include name="lib/bc4jmtejb.jar"/>
    <include name="lib/collections.jar"/>
    </fileset>
    <fileset dir="${jdeveloper.root}/jdev/multi/system/templates/jclient">
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </copy>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/bc4jctvb.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/bc4jdatum.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/bc4jdomgnrc.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/bc4jimjui.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/bc4jmtvb.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/jlib/bc4jui.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/bc4jct.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/bc4jctejb.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/bc4jdomorcl.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/bc4jimdomains.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/bc4jmt.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/bc4jmtejb.jar"/>
    </antcall>
    <antcall target="sign_jar">
    <param name="jarname" value="${temp.war.dir}/lib/collections.jar"/>
    </antcall>
    <jar jarfile="${temp.ear.dir}/BC4J.war">
    <fileset dir="${temp.war.dir}">
    <include name="**/*.jar"/>
    <include name="**/*.zip"/>
    <include name="WEB-INF/web.xml"/>
    </fileset>
    </jar>
    <delete dir="${temp.war.dir}"/>
    </target>
    <target name="create_application_xml" depends="init">
    <appxml appxml="${temp.ear.dir}/application.xml">
    <displayname name="bc4j"/>
    <webmodule weburi="lib.war" contextroot="/lib"/>
    <webmodule weburi="ord.war" contextroot="/ord"/>
    <webmodule weburi="j2ee.war" contextroot="/j2ee"/>
    <webmodule weburi="jlib.war" contextroot="/jlib"/>
    <webmodule weburi="jdev.war" contextroot="/jdev"/>
    <webmodule weburi="vbroker4.war" contextroot="/vbroker4"/>
    <webmodule weburi="jdbc.war" contextroot="/jdbc"/>
    <webmodule weburi="BC4J.war" contextroot="/BC4J"/>
    </appxml>
    </target>
    <target name="ear">
    <antcall target="lib_war"/>
    <antcall target="ord_war"/>
    <antcall target="j2ee_war"/>
    <antcall target="jlib_war"/>
    <antcall target="jdev_war"/>
    <antcall target="vbroker4_war"/>
    <antcall target="jdbc_war"/>
    <antcall target="BC4J_war"/>
    <antcall target="create_application_xml"/>
    <ear earfile="${ear.file.name}" appxml="${temp.ear.dir}/application.xml">
    <fileset dir="${temp.ear.dir}">
    <include name="*.war"/>
    </fileset>
    </ear>
    </target>
    <!--target for signing wars-->
    <target name="sign">
    <property name="signing.enabled" value="true"/>
    <antcall target="ear"/>
    </target>
    </project>

  • 'Unable to Launch Application Error' - Java Web Start Running Under MS IIS.

    I am attempting to render the following .jnlp in MS IE:
    <?xml version="1.0" encoding="utf-8"?>
    <!-- JNLP File for LottoMadness Application -->
    <jnlp
       codebase="http://localhost/LottoMadness/"
       href="LottoMadness.jnlp">
       <information>
         <title>LottoMadness Application</title>
         <vendor>Rogers Cadenhead</vendor>
         <homepage href="http://localhost/LottoMadness/"/>
         <icon href="lottobigicon.gif"/>
       </information>
       <resources>
         <j2se version="1.5"/>
         <jar href="LottoMadness.jar"/>
       </resources>
       <application-desc main-class="LottoMadness"/>
    </jnlp>I've deployed the .jnlp, .gif, and .jar to MS IIS, running locally on my PC.
    When I attempt to render the .jnlp in IE I obtain an 'Application Error' window stating 'Unable to Launch Application'. Clicking details gives me:
    com.sun.deploy.net.FailedDownloadException: Unable to load resource: http://localhost/LottoMadness/LottoMadness.jnlp
         at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
         at com.sun.deploy.net.DownloadEngine.getCacheEntry(Unknown Source)
         at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(Unknown Source)
         at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(Unknown Source)
         at com.sun.deploy.net.DownloadEngine.getResource(Unknown Source)
         at com.sun.deploy.net.DownloadEngine.getResource(Unknown Source)
         at com.sun.javaws.Launcher.updateFinalLaunchDesc(Unknown Source)
         at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
         at com.sun.javaws.Launcher.launch(Unknown Source)
         at com.sun.javaws.Main.launchApp(Unknown Source)
         at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
         at com.sun.javaws.Main$1.run(Unknown Source)
         at java.lang.Thread.run(Unknown Source)I have configured MS IIS for Web Start, by setting the Extension/Content Type fields to .jnlp and application/x-java-jnlp-file.
    (The .jnlp is basically from 'Programming with Java in 24 Hours', as this is the book I am learning Java from.)

    AndrewThompson64 wrote:
    I am not used to seeing references to a local server that do not include a port number.
    E.G. http://localhost:8080/LottoMadness/
    I have deployed the following HTML (HelpMe.html) to the web server:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
         <title>Untitled</title>
    </head>
    <body>
    Help Me!
    </body>
    </html>When I attempt to render the URL in IE, I see the page just fine. The URL is use is:
    http://localhost/LottoMadness/HelpMe.htmlSo, I think my web server setup and usage is ok.
    >
    As an aside, what happens if (your MS IIS is running and) you click a direct link to..
    [http://localhost/LottoMadness/LottoMadness.jnlp|http://localhost/LottoMadness/LottoMadness.jnlp]
    When I click this link I get the error and exception I cited in my previous post.

  • How to get access to the local file system when running with Web Start

    I'm trying to create a JavaFX app that reads and writes image files to the local file system. Unfortunately, when I run it using the JNLP file that NetBeans generates, I get access permission errors when I try to create an Image object from a .png file.
    Is there any way to make this work in Netbeans? I assume I need to sign the jar or something? I tried turning "Enable Web Start" on in the application settings, and "self-sign by generated key", but that made it so the app wouldn't launch at all using the JNLP file.

    Same as usual as with any other web start app : sign the app or modify the policies of the local JRE. Better sign the app with a temp certificate.
    As for the 2nd error (signed app does not launch), I have no idea as I haven't tried using JWS with FX 2.0 yet. Try to activate console and loggin in Java's control panel options (in W7, JWS logs are in c:\users\<userid>\appdata\LocalLow\Sun\Java\Deployment\log) and see if anything appear here.
    Anyway JWS errors are notoriously not easy to figure out and the whole technology in itself is temperamental. Find the tool named JaNeLA on the web it will help you analyze syntax error in your JNLP (though it is not aware of the new syntax introduced for FX 2.0 and may produce lots of errors on those) and head to the JWS forum (Java Web Start & JNLP Andrew Thompson who dwells over there is the author of JaNeLA).

  • Web Start beginner - Web Start front end to existing web app?

    Hi all,
    I'm new to Web Start, though have been hearing about it for some time. Even after reading the documentation, I have some basic questions about it.
    Specifically, is it possible to invoke business methods via something like a Struts ActionServlet through a Web Start gui? That is, say my Web Start app and my existing web-based Struts app were on the same server, could I easily invoke the ActionServlet by passing in a URL with parameters? Thus giving me the ability to completely reuse my 'MC' of my Model-View-Controller app, and just replacing/adding another view ('V')?
    Has anyone ever done this? If so, are there good examples?
    Thanks in advance,
    Mike

    WebStart is a deployment mechanism for otherwise perfectly normal Java applications. WebStarted applications run on the client, not the server. WebStarted apps run in a protected environment (the Java sandbox), meaning they can't do potentially harmful things on the client machine such as reading and writing files or creating network connections to any server other than the one they were loaded from, unless you obtain special permissions from the user (the application needs to be signed for this to happen).
    So there is nothing that specifically prevents you from using a WebStarted application as a front-end for a Struts webapp. If it makes sense to use a client-side application for that purpose is a question only you can answer.

  • Web Start and Web Application

    I have a scenario as given below.
    I have a Central Server hosting a web application(JSPs, jars) in Jetty 6.0.0. I have many branch servers having Jetty 6.0.0 installed and the web application deployed.
    Now, I want to update the web application on all my branch servers whenever a modification is done on the Central server.
    Can Web Start help me in such a scenario?
    So far I understood that Web Start can be used to deployed / update only Client Applications.

    Did you ever find a solution?

  • Very Urgent Unable to Launch Application using Web Start using JDK 1.4.2

    Hi all
    I am very serious issue i have ejb client swing application that uses
    RMI to contact a session bean deployed in JBoss now i want the client app to be installed in the client machine using web start . Also i understand i require security permission to access network resources. so i have signed all the JAR files with same certificate created using self certificate avialiable in JDK by default also in the JNLP file in have included the following tag
    <security>
    <all-permissions/>
    </security>
    Now when I launch my application using Web start it gives an error that " Unsigned application is trying to access local resources"
    I unable to understand what could be the problem . Please help me with the steps to be followed where in client should be able to RMI call to the server
    Thanks in Advance
    Naveen

    You may have tried this already, but you might have to sign the jars via command line, outside any export process from your IDE.
    $ jarsigner {filename}.jar {key from keystore}
    I also had problems using webstart and RMI through an RCP
    Ben

  • Java web start running on windows NT4 work station

    I have installed java web start on a windows NT4 work station (service pack 6) with a directx v5. I successfuly launch the sun applications such as swing set 2, but I have some troubles concerning our software which used another look and feel than the default one. A system error is raised saying that the library ddraw.dll could not be loaded.
    I have unistalled and re-installed directx v5 but the error is still raised.
    Does any one can help me to solve this problem ?.
    Thank you.

    Hello Sim085
    thanks for your reply.
    Perhaps it would be easier for us to continue the programming with any kind of VisualStudio Produkt ;-), although we dont't had to think about OOP yet!
    Because of our new Network-Technology (Terminal-Server) we have to discuss serveral possibilities.
    I've read about JSP and ASP.NET, and I want to know if JSP or any kind of JAVA Program will run on a Terminal-Server.
    Are there any special aspects I have to know when running JSP on a terminal server from Microsoft? Is it better to program applications in JAVA or in JSP? ...
    Thanks
    Rasming

  • Java Web Start running JasperReports

    The following is the exception that is thrown when trying to compile an .xml report template to a JasperReport object, from an app that has been deployed via the Java Web Start:
    dori.jasper.engine.JRException: Errors were encountered when compiling report expressions class file:
    C:\Program Files\mozilla.org\Mozilla\DailyReport.java:4: package dori.jasper.engine does not exist
    import dori.jasper.engine.*;
    * I have deployed the application properly via Java Web Start; however, when running the application it is not able to compile the xml file to a JasperReport object.
    * The .java file is created properly; but the app does not seem to be able to find the dori.jasper.engine.*; library.
    * I have signed and included the jasperreports-0.5.0.jar (and it's dependencies) with the app, and have put the path to all of it in the Class-Path of the manifest file.
    * NOTE: Just FYI, I am able to run this without any problems under netbeans.

    Dear Patrick,
    Recently I have used iReports for generating report through java & deploy it through java web start.
    I had taken all the measures you had mentioned in your previous replies. But I am not able to view the report. ( might be it is not compiliing)
    I am using new version of jasperreports-0.5.3.jar
    also through console it is running well.
    Also it is not giving any errors. can u have any idea about this.
    Might be it is silly mistake I have done.
    My code for report generation is :
    public class SReportA
         public SReportA()
         try
         JasperDesign jasperDesign = JasperManager.loadXmlDesign("/home/ora/iReport/RSENIORITYLIST-A.xml");
         dori.jasper.engine.design.JRBshCompiler theCompiler = new dori.jasper.engine.design.JRBshCompiler();
         JasperReport jasperReport = theCompiler.compileReport(jasperDesign);     
         Map parameters = new HashMap();
         parameters.put("uname","admin");               
         Connection con=null;
         try
              Class.forName("oracle.jdbc.driver.OracleDriver");
              con=DriverManager.getConnection("jdbc:oracle:thin:@158.144.71.219:1521:dbadp","acom","admin123");
         catch(Exception e)
              System.out.println("Exception in test.jsp "+ e);
         JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameters,con);
         JasperManager.printReportToPdfFile(jasperPrint,"ReportA.pdf");
         JasperViewer.viewReport(jasperPrint,false);
         catch(Exception e){ System.out.println("There is exception here"+ e); }

  • Unable to run my application using java web start

    i have created one application and use java web start to download the application. all the files are succesfully downloaded but when i try to run the application an expected error occur. this only happen in my machine but not in other machine i'm currently using
    -jsdk1.4.2
    -windows 2000 professional 5.00.2195 service pack 3
    -pentium III 870 Mhz
    -x86-based PC
    -RAM 256 Mhz
    Anyone knows why, plz help me with this puzzle

    Please post the information from the Web Start "Exception" and "Wrapped Exception" tabs when the error occurs (I assume the error was in fact unexpected ;-)
    A blind stab in the dark would be that you don't have write permission to the cache directory on the second machine. Also worth checking that the proxy settings on the second machine are the same as the first (if they are on the same network).

  • Unable to Launch Integration Builder: Java Web Start problem

    Hi,
    I am unable to launch the integration builder. I am using JDK 1.4.2_05. The java Web Start gives the following error:
    Unsigned application requesting unrestricted access to system
    Unsigned resource: http://<XIHostName>:50000/rep/repository/aii_util_rb.jar
    I have tried deleting the Java web start cache, and even reinstalling the JDK.
    Can someone suggest a workaround this problem ?
    thanks,
    Manish

    The Java Web Start cannot accept unsigned jars. If the jars are signed, it will ask in a dialog box if it should allow unrestricted access to this jar.
    In my case, I upgraded XI SP0 to SP4, which included updating the Adapter Core, Adapter Framework, and the XI TOOLS to SP4.
    On launching the Web start, it seemed that the jars were not getting signed. JWS cannot allow unsigned jars to the client.
    These jars are maintained in:
    \usr\sap\<SID>\SYS\global\xi\directory_server\javaws\directory
    I am having problems with my XI upgrade to SP4, and it is probably not signing the jars.
    Do you know why this may be happening ...
    thanks,
    Manish

  • Unable to launch Integeration Builder - Java Web Start - Unexpected Error

    Hi there,
    I am not able to launch the Integeration builder. The ESR has no problem and is working fine though.
    Here is the exception :- com.sap.aii.ibdir.gui.appl.ApplicationImpl
    I have tried below options already :
    1. Cleared the java cache under - javaws -logviewer
    2. Go into administration and inside Directory --> Java Web Start Administration clicked "Restore archives and generate new sign."
    Strange part is some of my colleagues here doesnt have any issue while opening the Integeration Builder. In fact I dont have any such issue in QA and PROD environment. The issue is only in DEV environment. Please advice.
    Anshul

    Hello,
    Usually restoring the archives will help resolve the issue.
    If the issue is occurring for just yourself maybe you could check that you are using the correct java version. e.g. for for 7. 1 java version 5
    Also please refresh the Java Web Start:
    If it's a Windows terminal, select Start - Run - javaws to launch Java Web Start and then clear the cache. File -> preferences ->
    advanced -> clear folder button
    If you have later versions of Java and doing the
    Start -> Run doesn't give you anything, then select Start - Run and type Control and hit Enter. Double-click Java in the list
    that displays to view the more up-to-date Java Control Panel. In the General tab, select Settings from the Temporary Internet Files section. Click Delete Files to clear the cache and then log into the Integration Builder again (download will be longer as jars will be cached locally again).
    If the problem still remains I would advise to check that the latest patches have been applied for XI_TOOL, and also the other components MESSAGING  SAP-XIAFC SAP_XIAF SAP_XIESR SAP_XIGUI
    Regards,
    Sarah

Maybe you are looking for

  • How to delete selective data in a cube

    Hi all, Can any one tell me, how to delete selective data in a cube. For example if i want to delete data corresponding particular Matrial Id  or particular Customer ID (say C400) ? And even deleting the data based on particular Request numer.? Sandy

  • Regarding XML Schemas

    Hi, BPM Implementation: We are having ServiceError.xsd which consists of three parameters (ErrorCode, ErrorMessage, Severity) which we have cataloged in BPM and created Heir Object named "ErrorDetails" of the same. We have created one instance variab

  • Why is ipod repair pricing so outragously expensive?

    Hi all, My 3rd gen 40gb ipod has failed recently after barely 2 years of usage. I am pretty sure it's the hard drive that is failing. I can clearly hear weird noises it makes. I can't even access it at all anywhere, like on windows explorer or itunes

  • I Ask About WCS count Client not same WLC

    WCS  count Client not same WLC   as on WLC count client  = 100 on WCS count = 23-23    Wireless Control System  Version 5.2.148.0  WLC  7.0.250.0 http://postimg.org/image/9boldeqd5/ http://postimg.org/image/l482i9poz/

  • Active Directory users unable to change passwords

    I have about 10 Macs running 10.4.11 that are bound to Active Directory (Windows 2000 Server). Users see the warning that their password is about to expire. However, for users who have a local account on the machine, when they attempt to change their