This discussion is archived
5 Replies Latest reply: Jan 16, 2013 12:38 PM by wgkorb RSS

Running JDeveloper from a shared MW_HOME

wgkorb Newbie
Currently Being Moderated
We have several users that use the same RHEL5 Linux server with VNC desktops. We have installed JDeveloper 11.1.1.6 and are able to launch it and deploy apps successfully to remote WLS app server instances.

However, some users are accustomed to using the IntegratedWebWebLogicServer app server instance so that can right click->Run files. Unfortunately, we are not able to get this working.

The first problem was that many of the files in the shared JDev install directory (/opt/oracle/middleware/jdeveloper) had overly restrictive permissions on them so that users couldn't run wlst.sh and such. Once I resolved that, any user that tries to configure the integrated server now sees this in their CreateDefaultDomain.log:

-----
wlst > com.oracle.cie.domain.script.jython.WLSTException: com.oracle.cie.domain.script.jython.WLSTException: com.oracle.cie.domain.script.ScriptException: com.oracle.cie.domain.GenerationException: Unable to create applications directory: /opt/oracle/middleware/user_projects/applications/DefaultDomain
-----

So it would appear that something in the CreateDefaultDomain.py script that is being passed to wlst.sh is trying to create the appdir under the shared MW_HOME, and that is not allowed. The DOMAIN_HOME is getting created where I'd expect ($HOME/.jdeveloper/system11.1.1.6.38.61.92/DefaultDomain) but for some reason, it is not doing the same for the appdir.

Is there some way I can get that WLST script to change the default appdir location to something under the user's HOME?

Thanks,
Bill
  • 1. Re: Running JDeveloper from a shared MW_HOME
    Blueberry Coder Journeyer
    Currently Being Moderated
    Hi.

    You simply have to set the JDEV_USER_DIR (or JDEV_USER_HOME) environment variable, as the domain is contained with the JDeveloper user settings. A value like $HOME/jdev should do the trick.

    Best Regards,

    Frédéric.
  • 2. Re: Running JDeveloper from a shared MW_HOME
    wgkorb Newbie
    Currently Being Moderated
    Frédéric,

    I found information about those environment variables, and tried setting JDEV_USER_DIR to $HOME/.jdeveloper (which appears to be what it defaults to, anyway). That had no effect. The DOMAIN_HOME is getting created under there, but the error I'm seeing regarding the appdir persists.

    I found in the WLST documentation information regarding the setOption() function and the AppDir as being one of the options that can be modified. I tried adding that to the CreateDefaultDomain.py script, closing JDev, deleting the DefaultDomain directory, then restarting and retrying the integrated server configuration, but it still fails while griping about permissions issues with the shared MH_HOME directory. As it turns out, when it tries to configure the server, it rewrites the CreateDefaultDomain.py script and overwrites my changes.

    Thanks,
    Bill
  • 3. Re: Running JDeveloper from a shared MW_HOME
    Blueberry Coder Journeyer
    Currently Being Moderated
    Hum... I have never used an environment like yours, so I don't have real-world experience to rely on. Here are a few pointers for further troubleshooting anyway:

    - Have you tried to launch JDeveloper from the command line? If so, are you getting more specific errors when trying to start the server?
    - Is SELinux enabled on your server? If yes, have you tried deactivating it?
    - Have you tried to give sudo rights to a test user and launch JDeveloper under sudo?

    Worst case, what you could try to do is to install a standalone WebLogic instance, then create one domain per developer. You can configure this instance as an integrated server by creating a connection in the Application Server Navigator. Your users will not see the difference (as long as they run on the same server).

    Let me know how it goes.

    Best Regards,

    Frédéric.
  • 4. Re: Running JDeveloper from a shared MW_HOME
    wgkorb Newbie
    Currently Being Moderated
    Launched from the command line, and no further information.

    No SELinux enabled.

    If I ran it as sudo root (or sudo oracle) I'm sure it would work for the first user, because then the user would be able to write in the shared directory. However, then the second user would try to create the appdir in the same, shared location and would stomp on the first user.

    There has to be a way to designate a non-default location for the appdir, or this won't work.

    Yes, we actually do have a per-developer WLS installation, but it is not the "Integrated" one so things like right click->Run do not work (those always go to the integrated instance). We are able to deploy full apps to the per-developer instance, but some of these other features that the developers are accustomed to using do not work without the integrated server working.

    Thanks,
    Bill
  • 5. Re: Running JDeveloper from a shared MW_HOME
    wgkorb Newbie
    Currently Being Moderated
    Well as it turns out, there is a very elegant way of dealing with this situation as documented in this Oracle blog post:

    https://blogs.oracle.com/onesizedoesntfitall/entry/solution_for_developers_wanting_to

    All I had to do was define the server that I had already configured as an Integrated Server instead of a Standalone Server, then bind the application to the integrated version of the server, and voila, it worked!

    Bill

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points