Embedding The "Java DB" in a JNLP app

Has anyone embedded Sun's "Java DB" in a JNLP application? See http://developers.sun.com/prodtech/javadb/ if you are unfamilar, though the answer would be no in your case.
I have a JNLP system 3/4 complete using HSQL, http://hsqldb.org/ , with 20 tables, views, & about 80 mb of data uncompressed. I take HSQL from source code, and put it right into my signed jar. After removal of the database manager utility & obfuscation, it takes about 300k. While I am happy, I just want to make sure I have made the right choice. Java DB says it's "ideal" for embedding, yet does not even mention Java Webstart. Not confidence inspiring.
The one thing I am interested in that Java DB says it does, but HSQL does not, is datafile encryption.
The things that concern me are:
- Is 2mb, Java DB's jar sizes, cause problems for downloading a jar file?
- Does the encryption turn it into a dog?
- Has anyone ever run both for the same application, and formed an opinon?
I know, I would need to sign Sun's jars for this to have access to the file system. Any other thoughts that would keep me from wasting a week to find out?
Thanks,
Jeff

I am responding to this because I have an interest in
JWS launched D/B's (embedded or otherwise) and
recently began doing some initial experiments using
the Apache Derby D/B. My experimetns have not
actually progressed to JWS launch of the D/B quite yet.
As such, I cannot comment on most of the things you
asked, however..
The things that concern me are:
- Is 2mb, Java DB's jar sizes, cause problems for
downloading a jar file?For who? The end user?
'It depends'. I would be very angry to be an end-user
that downloads 2 Meg. of data just to have 'scrolling
messages' drift across the screen.
OTOH, if the D/B is vital to my job, a 3-4 minute
download (of classes that are installed and
cached locally) is 'no big deal'.
I know, I would need to sign Sun's jars for this to
have access to the file system. Not necessarily. Web-start offers other mechanisms
for JWS untrusted applications to gain access to local
files (e.g. FileOpenService/FileSaveService).
The code to utilise these JNLP API services is
quite different to the code you might use in the
J2SE though, so it is more a strategy you might
pursue for new a project, where all that code is
yet to be written.
For an existing desktop application that is about to
be wrapped in web-start, it is usually difficult, if
not impossible, to translate what it does into
equivalent JNLP API services, and a lot easier to
sign it and request either 'all-permissions' or
'j2ee-application-client' permissions in the JNLP.
If you need to sign it, Ant makes a light task of it.

Similar Messages

  • Java 6u24 won't launch signed JNLP app with classes compiled with JDK 1.4.2

    Anyone else having a problem launching a JNLP app compiled with Java 1.4 using Java 6u24 on the client? Anyone have a Java 1.4-compiled app that does launch with Java 6u24?
    I am, and I have isolated the problem to some change in 6u24's java web start launching logic. The splash screen appears and then javaws just quits with no error. Trace shows it is not getting past checking of the first .jar. My JNLP app, fully signed with CA-issued certificate, when compiled with Java 1.4.2 will not launch on JRE 6u24 (or 6u25-b03). The same exact app launches perfectly fine when it is compiled with JDK 1.5 or 1.6. It is not a signing problem, though it is related to certificate checking logic or a concurrency flaw in javaws' AppPolicy and TrustDecider classes. It is not a host server or network problem as those have been varied with same results. It is not a specific .jar problem as I have varied what is the first .jar with same results. I have eliminated all other variables to find the only difference is what Java version the app is compiled with. Well, all but one other variable - I have not tried with apps other than mine.
    My app is compiled with JDK 1.4.2 so I can still support older platforms. That requirement is going away soon but this is still a regression from 6u23 that is causing a big problem for at least this developer.

    You can try to use the version of the jarsigner JDK 1.5 or later.
    Has changed the management of files in META-INF.
    So compile with 1.4 but sign with 1.5 or later

  • Threat of jnlp app startup failure in future java release

    I am the developer of a java jnlp app and have just upgraded to 1.7.0_45.  Web start is now threatening to block my app from starting in a future release because my jar file is missing the Permissions manifest attribute.
    It is easy enough to add the attribute to my main jar, where I get confused is with 3rd party jars.  For example, my application makes use of about a dozen libraries, one of which is commons-logging-1.0.4.jar.  I can see many warnings related to this in the java console.  To prevent the warning (and threatened blockage) do I need to alter all of my 3rd party jars?  Is it enough to just add the permission to my main jar?

    I used Ant to do this as well but had to loop through the many 3rd party jars we use so opted to use the (divisive?) Ant-Contrib Tasks
    i.e. foreach over 3rd party jars and then called the jar update manifest command.
    Seems to work fine - although I still have an issue with unsigned jjnlp file warning - and the template ioption in the main.jar does not work!

  • Error when embedding the plugin inside java

    I have IE wrapped inside java, and when IE loads a page with java, I get the error message "Attachment to a running Virtual Machine failed." I guess the plugin gets confused by the allready running VM.
    Do I need to supply some hooks for the plugin?
    My code is a http://nothome.com/IEcanvas/

    My organization is also trying to embed IE 6.0 inside of a Java application using the IECanvas code, http://www.nothome.com/IECanvas/. That code was derived from work done at The Code Project, http://www.codeproject.com/java/javacom.asp.
    We are attempting to use the Java 1.4 release candidate with this code. Everything seems to work well, until IE attempts to load a Web page that has an imbedded Java applet that requires the Java Plugin. We have insured that IE is calling the exact same version of Java, version 1.4, when loading the plugin. Unfortunately, when the Java plugin starts loading, the error "Attachment to a running Virtual Machine failed" is presented in a dialog box titled "Java(TM) Plug-in 1.4 Fatal Error".
    After this IE asks if the user wishes to install the Java 1.4 plugin. Essentially, no Java 2 applets will work in IE once it is embedded in our Java application.
    I have done some research, and discovered that it should be possible to run more than one instance of the Java Virtual Machine in the same process space. I would like it if someone knows how to force the Java plugin to start a new Virtual Machine instance instead of trying to connect the the already running instance in the encompassing Java application.
    Thanks!
    Warren

  • Is it possible to open the Java plugin / WebStart Console from my app ?

    Hi,
    I would like to know if it is possible to add a menuitem to my application that would start the Java plugin/web start console.
    That would be nice when people have errors in my application.
    Martin

    Thanks for the information, but is there a way to do it without using exec methods ?
    I just want to bring up the Java Console from my app, in the more portable way possible ;-)
    Martin

  • How to use the Java embedding activity in BPel

    hi all,
    How to use the java embedding activity in BPEL
    pls can u provide sample example

    1 Use [Oracle BPEL Process Manager Client Java API Reference|http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28986/overview-summary.html] and especially [com.collaxa.cube.engine.ext|http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28986/com/collaxa/cube/engine/ext/BaseBPELXExecLet.html]
    Instead of System.Out.println use addAuditTrailEntry(java.lang.String message)
    2. If you want to import a package write in code (Source View) of bpel process
    +<bpelx:exec import="package_name"/>+ for example +<bpelx:exec import="java.util.regex.Matcher"/>+
    example 1:
    String bodyAsString;
    StringBuffer myStringBuffer = new StringBuffer();
    try {
    bodyAsString = (String)getVariableData("BodyString");
    addAuditTrailEntry("bodyAsString1: "+ bodyAsString);
    Pattern pattern = Pattern.compile("goodDay");
    Matcher matcher= pattern.matcher(bodyAsString);
    while (matcher.find()) {   
    matcher.appendReplacement(myStringBuffer, "shitDay");
    matcher.appendTail(myStringBuffer);
    bodyAsString = myStringBuffer.toString();
    addAuditTrailEntry("bodyAsString2: "+ bodyAsString);
    } catch (Exception ex) {
    addAuditTrailEntry("Failed+bodyAsString",ex.getMessage());
    I put in code (Source View) the following
    <bpelx:exec import="java.util.regex.Matcher"/>
    <bpelx:exec import="java.util.regex.Pattern"/>
    example2:
    Object temp;
    try {
    temp = ((XMLElement)getVariableData("inputVariable","payload","/ns2:FiscalisMessage/ns2:Body")).getChildNodes().item(1);
    setVariableData("AdjReceipt",temp);
    addAuditTrailEntry("ok",temp.toString());
    catch (Exception ex) {
    addAuditTrailEntry("Failed :",ex);
    I put in code (Source View) the following
    <bpelx:exec import="oracle.xml.parser.v2.XMLElement"/>

  • Prevent JNLP from being cached in the Java Web Start cache

    Hi,
    when i launch a JNLP it's always being cached in the Java Web Start cache. Is there a way to prevent it from being cached? Some attribute/property inside it?
    Thanks!

    Set the http headers in the response from the server when the client downloads the jnlp file.
    eg Cache-control no-cache
    Expires (use same date as "date" header)
    Note that over SSL on Internet Explorer 8 this will not work. All other configurations should be ok.

  • Hello Sorry for the inconvenience, but I have a problem in Java I can not open files, audio chat, which type of jnlp after the last update of the Java 2012-004 Please help me in solving this problem.

    Hello Sorry for the inconvenience, but I have a problem in Java I can not open files, audio chat, which type of jnlp after the last update of the Java 2012-004
    Please help me in solving this problem. 

    Make sure Java is enable in your browser's security settings.
    Open Java Preferences (in Utilities folder)
    Make sure Web-start applications are enabled.
    Drag Java 32-bit to the top of the list.
    jnlp isn't an audio file format. It's just a java web-start program (Java Network Launching Protocol).

  • Could not create the Java Virtual Machine. when deploy Android mobile App

    Using Jdeveloper 11.1.2.3.0.... with Mobile App plugin.
    I am working on deploying an Andriod mobile app to the emulator and most of the time I get the following....
    Deployment failed due to one or more errors returned by 'C:\Temp\adt-bundle-windows-x86\sdk\platform-tools\dx.bat'. The following is a summary of the returned error(s):
    Command-line execution failed (Return code: 1)
    Error: Could not create the Java Virtual Machine.
    Error: A fatal exception has occurred. Program will exit.
    Once in a great while I get it to work and the app deploys but 90% of the time I get this error.
    I do start the emulator up before I even fire up JDeveloper so the emulator is up and running OK when i go to delpoy.
    Any suggestions?
    Thanks!

    Hi.
    Usually, this happens when there is no JDK in the PATH system variable. JDeveloper and WLS will work, but some external tools will fail. Can you please ensure that you have a reference to the <tt>bin</tt> subfolder of a Java SE 6 JDK in it? You should get something like this when you execute <tt>java -version</tt> on the command line:
    java version "1.6.0_37"
    Java(TM) SE Runtime Environment (build 1.6.0_37-b06)
    Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01, mixed mode)Best Regards,
    Frédéric.

  • HT5493 Does anyone know why the latest Java upgrade(OS X 2012-006) removes the Java Preferences app in Appllication- Utilities folder?

    Does anyone know why the latest Java upgrade(OS X 2012-006) removes the Java Preferences app in Appllication-> Utilities folder?

    bispymusic wrote:
    http://support.apple.com/kb/HT5493
    This support article from Apple disJava dicusses this.
    You're confusing the browser plug-in with the JVM.

  • Why the constructor of the base class calls first when u run the java app.

    why the constructor of the base class calls first when u run the java application

    For the record the other very exciting questions are:
    pls give the differences between application server and web server with examples
    will u pls narrate the differences between servlet context and servlet config.....
    where can we find servlet config...
    is there any methods to access servlet config

  • How To Access a jar file present outside the war file through a jnlp

    Aoa
    I m new to this forum
    I m having problem with my jnlp file
    i want to know is there any way to access a jar file through jnlp.The problem is that my jnlp file is present in the war file
    and i want to know how to acess a jar file through this jnlp.The scenerio is as below
    I m using ear file on jboss.Its hirerchy is as
    -PAN-war.war
    -launch.jnlp
    -PAN-app-client.jar
    my jnlp file is as follows:
    <?xml version="1.0" encoding="UTF-8"?>
    <jnlp spec="1.0+" codebase="http://localhost:8080/" href="PAN/launch.jnlp">
    <information>
    <title>PanEmirates</title>
    <vendor>M Fazal Ur Rehman</vendor>
    <description>PanEmirates</description>
    <description kind="short">PanEmirates</description>
    <homepage href=""/>
    </information>
    <security>
    <all-permissions/>
    </security>
    <resources>
    <j2se version="1.5+"/>
    <jar href="PAN-app-client.jar" download="eager"/>
    <jar href="lib/javafxrt.jar" main="true" download="eager" />
    <jar href="lib/Filters.jar" download="eager"/>
    <jar href="lib/javafx-netbeans-fxuserlib.jar" download="eager"/>
    <jar href="lib/swing-layout-1.0.3.jar" download="eager"/>
    </resources>
    <application-desc main-class="net.java.javafx.FXShell">
    <argument>pan.Main</argument>
    </application-desc>
    </jnlp>
    when i run launch.jnlp file it says unable to download resource http://localhost:8080/PAN/PAN-app-client.jar
    how to access this jar file
    Any help or comment would be highly appreciated
    Regards
    M Fazal Ur Rehman

    Excellent question. I don't see any client-jar in your EAR file structure. So I am assuming you are writing a separate client application which will talk to the ejbs deployed as part of this EAR. You need to do the following:
    Write another EAR file with the following structure:
    ear:
    META-INF/application.xml
    util.jar
    client.jar
    client.jar should have a META-INF/MANIFEST.MF and that should contain Class-Path:util.jar and value for Main-Class attribute.
    Now deploy this new ear to your application server and execute it using Application Client Container that comes with your app server.
    If you don't want to write another EAR file, then bundle th client.jar in your original EAR file.
    Points to note are:
    you have to repackage util.jar again inside this ear file.
    For portability reason, you should use Class-Path manifest entry in client.jar. Refer to http://java.sun.com/j2ee/verified/packaging.html and J2EE platform spec section #8.2.
    Hope this helps,
    Sahoo

  • Help with Essbase 9 and the Java API

    Hi, I am trying to connect to Essbase from a Java desktop application and I am unable to do so. I need to know if I am in principle doing the right things and if I have the correct environment set up.
    We have a server with Essbase version 9.3.1. We normally use essbase via the Excel Addin, and I have already written Excel applications that utilise both the addin and the Essbase VB API. Now I need to connect to Essbase but from outside Excel and using the Java API. I have no idea what APS is nor does my Essbase Administrator.
    My application has the following code (adapted from a post in this forum) -
    public static void main(String[] args) {
    String s_userName = "user";
    String s_password = "password";
    String s_olapSvrName = "ustca111";
    String s_provider = "http://localhost:13080/aps/JAPI";
    try{
    IEssbase ess = IEssbase.Home.create(IEssbase.JAPI_VERSION);
    IEssDomain dom = ess.signOn(s_userName, s_password, false, null, s_provider);
    IEssOlapServer olapSvr = dom.getOlapServer(s_olapSvrName);
    olapSvr.connect();
    System.out.println("Connection to Analyic server '" + olapSvr.getName() + "' was successful.");
    olapSvr.disconnect();
    }catch(EssException exp){
    System.out.println(exp.getMessage());
    I am running my application on my computer, not on the Essbase server, and the username I am using is the same one I use (as a user of Essbase) via the Essbase Addin in Excel, not an admin login.
    When I run the app I get:
    "Cannot connect to Provider Server.Make sure the signon parameters are correct and the Provider Server is running."
    Please can you confirm:
    1) Do I need an admin login for my client application to connect to the Essbase server or can I use a normal read-access login, like the one I use in Excel?
    2) Is the provider always the same regardless of the computer, i.e. "http://localhost:13080/aps/JAPI"; How do I know what this has to be? Where do I get this information from?
    3) How can I make sure that the Server is running the necessary "Provider Server", is this just a service that will show on services.msc of the server? What should I ask the Essbase Administrator for him to tell me what I need?
    Thank you very much.
    Leo

    Tim, when I look in my computer's Essbase installation path I can only find the following jar files (from the ones you have listed).
    C:\Hyperion\AnalyticServices\JavaAPI\external\css\log4j-1.2.8.jar
    C:\Hyperion\AnalyticServices\JavaAPI\lib\ess_es_server.jar
    C:\Hyperion\AnalyticServices\JavaAPI\lib\ess_japi.jar
    I do not have css-9_3_1.jar or interop-sdk.jar.
    In order to try the embedded mode, I added the three jars I have to the classpath, and have re-built and ran with "embedded" as the provider. This is what I got in my output screen:
    run:
    Error accessing the properties file. essbase.properties: essbase.properties (The system cannot find the file specified). Using default values.
    Hyperion Provider Services - Release 9.3.1.0.0 Build 168
    Copyright (c) 1991, 2007 Oracle and / or its affiliates. All rights reserved.
    connection mode : EMBEDDED
    essbase.properties: essbase.properties
    domain.db location: domain.db
    console log enable : false
    file log enable : false
    logRequest : false
    logLevel : ERROR
    java System properties -DESS_ES_HOME: null
    Scenario Markets Total Legal Entities Products
    Jan Feb Mar
    Standard Units 1.053264054859E7 1.60849856762E7 2.6234553348270003E7
    BUILD SUCCESSFUL (total time: 2 seconds)
    As you can see, this has worked (as I get the data I was looking for at the end), but when I had the url in the provider string, I just get the below, without the initial errors:
    run:
    Scenario Markets Total Legal Entities Products
    Jan Feb Mar
    Standard Units 1.053264054859E7 1.60849856762E7 2.6234553348270003E7
    BUILD SUCCESSFUL (total time: 2 seconds)
    Now that I can get both modes to work I intend to write a Windows application, place it in a shared drive, and allow multiple users to use it. Which mode should I use?
    By the way, I found the essbase.properties file in C:\Hyperion\AnalyticServices\JavaAPI\bin, but when I add it to my app and test it in embedded mode, I get even more errors, but it still gives me the result...output below:
    run:
    java.io.FileNotFoundException: ..\bin\apsserver.log (The system cannot find the path specified)
    at java.io.FileOutputStream.openAppend(Native Method)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:177)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:102)
    at org.apache.log4j.FileAppender.setFile(FileAppender.java:272)
    at org.apache.log4j.RollingFileAppender.setFile(RollingFileAppender.java:156)
    at org.apache.log4j.FileAppender.<init>(FileAppender.java:96)
    at org.apache.log4j.RollingFileAppender.<init>(RollingFileAppender.java:60)
    at com.hyperion.dsf.server.framework.BaseLogger.addAppender(Unknown Source)
    at com.hyperion.dsf.server.framework.BaseLogger.setFileLogEnable(Unknown Source)
    at com.hyperion.dsf.server.framework.DsfLoggingService.sm_initialize(Unknown Source)
    at com.essbase.server.framework.EssOrbPluginDirect.setupLoggingService(Unknown Source)
    at com.essbase.server.framework.EssServerFramework.<init>(Unknown Source)
    at com.essbase.api.session.EssOrbPluginEmbedded.<init>(Unknown Source)
    at com.essbase.api.session.EssOrbPlugin.createPlugin(Unknown Source)
    at com.essbase.api.session.Essbase.signOn(Unknown Source)
    Hyperion Provider Services - Release 9.3.1.0.0 Build 168
    at com.essbase.api.session.Essbase.signOn_internal(Unknown Source)
    at com.essbase.api.session.Essbase.signOn(Unknown Source)
    at esstest.Main.main(Main.java:22)
    Copyright (c) 1991, 2007 Oracle and / or its affiliates. All rights reserved.
    connection mode : EMBEDDED
    log4j:WARN No appenders could be found for logger (com.hyperion.dsf.server.framework.BaseLogger).
    essbase.properties: essbase.properties
    log4j:WARN Please initialize the log4j system properly.
    domain.db location: ./data/domain.db
    console log enable : false
    file log enable : true
    logFileName : ../bin/apsserver.log
    logRequest : false
    logLevel : WARN
    java System properties -DESS_ES_HOME: null
    Scenario Markets Total Legal Entities Products
    Jan Feb Mar
    Standard Units 1.053264054859E7 1.60849856762E7 2.6234553348270003E7
    BUILD SUCCESSFUL (total time: 3 seconds)
    Thank you
    Leo

  • How to specify desktop shortcut icon for JWS-JNLP app?

    Hi,
    When JWS sets a shortcut on the desktop for the app that I wrote, it just uses the Java cup icon. How can I get it to use my icon instead?

    I already have a line reading <icon href="yellow_aw.png"/> in my information tag, and the icon is the Java cup. I thought that the <icon href="yellow_aw.png"/> tag only specifies the icon that is displayed in the JavaWebStart start-up screen.
    Any other ideas?
    snippet from my JNLP file:
    <information>
    <title>AttitudeWatch</title>
    <vendor>BizDirect.net</vendor>
    <homepage href="http://www.attitudewatch.com" />
    <description>Improve your Attitude, Improve your Life.</description>
    <icon href="yellow_aw.png"/>
    <offline-allowed/>
    </information>

  • Embedding basic http authentication credentials in JNLP file

    I want to embed basic http authentication credentials in the JNLP file.
    Basically, I want the jars to be behind basic http authentication in order to distribute the application only to authorized users (I understand this is not strong security, but it's fine for my purposes) who are all on Windows, and once the java app is initially installed, I never want to have to enter the http login credentials again.
    So I set up the http authentication and in the jnlp file I have:
    <jnlp
         spec="1.5*"
    codebase="http://username:[email protected]"
         href="program.jnlp">
    This doesn't seem to phase the JWS authenticator. So on the first launch from the desktop shortcut I put the credentials in manually and select "save this password in my password list". It seems like I'm in the clear as the next time I launch the application from a desktop shortcut I am not asked for any credentials, but every time the Windows machine is restarted, I get the JWS authenticator again...the password is no longer saved.
    Is there a way to embed the username/password in the JNLP file to get past the JWS authenticator without having to retype the username and password every time the machine is restarted? Or to permanently save the password in the JWS authenticator password list? Or any other way to set it up where once the application is initially installed, the http authentication credentials never have to be manually entered again?
    Thanks!

    Hi everybody,
    I manage to do almost all (I suppose), but I need last help.
    Through SM59 I created the HTTP Destination needed; then, I implemented the code given by SAP here:
    http://help.sap.com/saphelp_47x200/helpdata/en/2d/64d053e74911d6b2e400508b6b8a93/content.htm
    I ran the program, and it gives me the error: "Binder not found for soapAction = null.
    I suppose that I should give the link to the soapAction, but I don't know where in the code.
    Have you any idea?
    Thanks and Regards,
    Francesco

Maybe you are looking for

  • Macbook Pro shuts off after few seconds of gray screen

    Help - I came home to discover my power cord had died and my laptop turned off due to no power. I used a friend's power cord to turn it on later that night and send some emails. I bought a new power cord the next day, plugged in, and turned  the lapt

  • Missing Episode Artwork

    I have created a series of podcasts for my website using Garageband that went off without a hitch. I dropped in artwork and also episode artwork in the lower lefthand corner in GB. I exported to iWeb with no problems but hit a snag when uploading to

  • Facebook app disappeared

    I updated my Facebook app. Now after it rebooted I can't find its icon or the app itself in search. It shows up in app world but there's no option to run it. I tried both re-i stalling it and downloading the app firin the Facebook mobile page. Still

  • In-camera noise reduction

    This question is directed to the technically knowledgeable out there and has to do with in-camera noise reduction settings. Although I'm shooting with a 1D4, I would guess the same would apply to all models. In a nutshell, is in-camera noise reductio

  • Error When Installing Printer -9672

    I am attempting to install an HP Laserjet M1319f MFP on my Imac that is plugged into the USB port on my AE. When I use the printer directly wired to a USB port on the IMac it works great but when I try to select it when it is wired to the AE I Get th