Does the websphere integration really work?

Hi there,

I've been trying, without much success, to get an ear with ejb modules deployed
in Webshphere (and have it work as well) using the WAS integration in IDEA
7. So far, it looks to me this is not working, as no matter what I tried
yielded no positive results.

I'm ready to give up, but I thought I'd give it one more shot and ask (again)
on the forums: has anyone managed to configure it so an application containing
one ejb module and several web modules is properly deployed by IDEA? Is this
issue (http://www.jetbrains.net/jira/browse/IDEADEV-9962) going to be addressed
any time soon and, if not, what's the recommended workaround?

I have a few colleagues who like very much what IDEA has to offer, but stick
with Eclipse+WTP mainly because webshphere integration works nicely for that
combo. It would be great if IDEA could, at least, keep up with that.

Thx,
Andrei


0
8 comments
Avatar
Permanently deleted user

Really, Websphere doesn't work with anything but products developed or sponsored by IBM. I'm in the same predicament as you, and the only solution I've found so far is keeping both IDEA and IBM RAD open simultaneously. I do all my coding in IDEA, then switch to RAD, refresh the project files, and deploy to WAS from there.

Not pretty (and not particularly memory efficient), I know, but I've come to hate Websphere so much that I can't even blame JetBrains. It's probably not their fault. Websphere just sucks. My only refreshment is hope for a good afterlife, as a reward for suffering so much for so long in the hands of IBM products.

1
Avatar
Permanently deleted user

Hello Marcus,

Oh, don't get me wrong, I know too well how awful websphere is. I was just
hoping for a bit of help in dealing with this nightmare and since there is
a plugin oficially released I hoped it works, too. It looked quite elaborate
and I just expected at least one of the possible configurations to get me
somewhere.

Mind you, though, deploying from ant does work, so it is possible to get
some integration in place. I'll probably end up using ant in some way, as
keeping Eclipse open just for starting webshpere is not very pleasant.

Best,
Andrei


0
Avatar
Permanently deleted user

Ah ... so it's not just me then.

Frankly, I'm amazed that Jetbrains manage to read the Eclipse project files.

I do exactly the same; code in IDEA and then just build in RAD (remembering that unlike IDEA, RAD cannot detect changes unless you thump the F5 key a few times.)

And yes, Websphere does suck and at the price, there's no excuse for it.

0
Avatar
Permanently deleted user

I'm unfortunately feeling the same pain ...

0
Avatar
Permanently deleted user

+100

0
Avatar
Permanently deleted user

Work around is to postprocess / deploy via ANT
http://publib.boulder.ibm.com/infocenter/rtnlhelp/v6r0m0/index.jsp?topic=/com.ibm.etools.j2eeapp.doc/topics/tantexampleautodeploy.html

Andrei Oprea wrote:

Hi there,

I've been trying, without much success, to get an ear with ejb modules
deployed in Webshphere (and have it work as well) using the WAS
integration in IDEA 7. So far, it looks to me this is not working, as no
matter what I tried yielded no positive results.

I'm ready to give up, but I thought I'd give it one more shot and ask
(again) on the forums: has anyone managed to configure it so an
application containing one ejb module and several web modules is
properly deployed by IDEA? Is this issue
(http://www.jetbrains.net/jira/browse/IDEADEV-9962) going to be
addressed any time soon and, if not, what's the recommended workaround?

I have a few colleagues who like very much what IDEA has to offer, but
stick with Eclipse+WTP mainly because webshphere integration works
nicely for that combo. It would be great if IDEA could, at least, keep
up with that.

Thx,
Andrei



--
Best regards,
Maxim Mossienko
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0
Avatar
Permanently deleted user

Hello Maxim,

Glad to see someone from JetBrains chiming in...

MM> Work around is to postprocess / deploy via ANT
MM> http://publib.boulder.ibm.com/infocenter/rtnlhelp/v6r0m0/index.jsp?t
MM> opic=/com.ibm.etools.j2eeapp.doc/topics/tantexampleautodeploy.html

Thanks, that's the solution I settled for so far, deploy the IDEA created
ear file from ant.

But here's what I managed to find in the meantime:

The main thing lacking from the websphere integration plugin is the ejb deploy
part. I recompiled the plugin with the following additions (in AppManagementWrapperImpl.createProperties)
and the ejbs deployed OK.

properties.put(AppConstants.APPDEPL_RELOADENABLED, Boolean.TRUE);
properties.put(AppConstants.APPDEPL_RELOADINTERVAL, "5");
properties.put(AppConstants.APPDEPL_DEPLOYEJB_CMDARG, Boolean.TRUE);
Hashtable deployOptions = new Hashtable();
deployOptions.put(AppConstants.APPDEPL_DEPLOYEJB_VALIDATE_OPTION, Boolean.TRUE);
properties.put(AppConstants.APPDEPL_DEPLOYEJB_OPTIONS, deployOptions);

You might want to include the above in the released version of the plugin
(the reload options are not mandatory, I just thought I'd try them as well)
even without exposing them in the configuration UI. I'd dare say the fix
is mandatory, as I can't see how the integration can work without it, unless
the step is performed manually on the ear/jar beforehand (which is more cumbersome).

Here's some documentation I managed to find related to that piece of logic:
http://publib.boulder.ibm.com/infocenter/adiehelp/index.jsp?topic=/com.ibm.wasee.doc/info/ee/javadoc/ae/com/ibm/websphere/management/application/AppManagement.html

The one thing I'm still having problems with is passing on the defaultbinding
option (it does not seem to be taken into account for the java interface).
This is the "-usedefaultbindings" option when deploying from ant, but I can't
figure out how to pass it in (it seems to be ignored). So I'm a bit ahead,
but not done yet, since there are quite a lot of bindings that are not explicitly
expressed in our *.xmi files. In the meantime, as mentioned, I'm using an
ant target for deployment (I start websphere from IDEA and then deploy using
ant, much easier than keeping eclipse around).

However, for someone with complete xmi files, the aditional ejbdeployment
step might do the trick. I can post the compiled updated class here, if anyone
is interested.

Best,
Andrei


0
Avatar
Permanently deleted user

Thank you very much! We will include your patch.

Andrei Oprea wrote:

Hello Maxim,

Glad to see someone from JetBrains chiming in...

MM> Work around is to postprocess / deploy via ANT
MM> http://publib.boulder.ibm.com/infocenter/rtnlhelp/v6r0m0/index.jsp?t
MM> opic=/com.ibm.etools.j2eeapp.doc/topics/tantexampleautodeploy.html

Thanks, that's the solution I settled for so far, deploy the IDEA
created ear file from ant.
But here's what I managed to find in the meantime:

The main thing lacking from the websphere integration plugin is the ejb
deploy part. I recompiled the plugin with the following additions (in
AppManagementWrapperImpl.createProperties) and the ejbs deployed OK.
properties.put(AppConstants.APPDEPL_RELOADENABLED, Boolean.TRUE);
properties.put(AppConstants.APPDEPL_RELOADINTERVAL, "5");
properties.put(AppConstants.APPDEPL_DEPLOYEJB_CMDARG, Boolean.TRUE);
Hashtable deployOptions = new Hashtable();
deployOptions.put(AppConstants.APPDEPL_DEPLOYEJB_VALIDATE_OPTION,
Boolean.TRUE);
properties.put(AppConstants.APPDEPL_DEPLOYEJB_OPTIONS, deployOptions);

You might want to include the above in the released version of the
plugin (the reload options are not mandatory, I just thought I'd try
them as well) even without exposing them in the configuration UI. I'd
dare say the fix is mandatory, as I can't see how the integration can
work without it, unless the step is performed manually on the ear/jar
beforehand (which is more cumbersome).

Here's some documentation I managed to find related to that piece of logic:
http://publib.boulder.ibm.com/infocenter/adiehelp/index.jsp?topic=/com.ibm.wasee.doc/info/ee/javadoc/ae/com/ibm/websphere/management/application/AppManagement.html


The one thing I'm still having problems with is passing on the
defaultbinding option (it does not seem to be taken into account for the
java interface). This is the "-usedefaultbindings" option when deploying
from ant, but I can't figure out how to pass it in (it seems to be
ignored). So I'm a bit ahead, but not done yet, since there are quite a
lot of bindings that are not explicitly expressed in our *.xmi files. In
the meantime, as mentioned, I'm using an ant target for deployment (I
start websphere from IDEA and then deploy using ant, much easier than
keeping eclipse around).

However, for someone with complete xmi files, the aditional
ejbdeployment step might do the trick. I can post the compiled updated
class here, if anyone is interested.
Best,
Andrei



--
Best regards,
Maxim Mossienko
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0

Please sign in to leave a comment.