1 2 Previous Next 18 Replies Latest reply: Jul 5, 2011 9:29 PM by Jason Greene RSS

jboss-as-client 7.0.0.CR1?

Sebastian Koske Newbie

Hi,

 

where can I find the jboss-as-client artifact for 7.0.0.CR1? I would like to test a remote service invocation.

 

Thx.

  • 1. Re: jboss-as-client 7.0.0.CR1?
    jaikiran pai Master

    Remote service invocations isn't supported in AS7.0. It will be part of AS 7.1.

  • 2. Re: jboss-as-client 7.0.0.CR1?
    Sebastian Koske Newbie

    Say what???

     

    Are you serious? How can you release an Application Server that can't serve remote clients? Are you really saying that we have to wait another half year to get this? I mean, you end-of-lifed JBoss 6 three months after it's arrival saying that JBoss 7 was just around the corner. I had a hard time convincing my management that we should switch our AS 5 migration strategy from AS 6 to AS 7 because of that. They only aggreed because AS 7 was scheduled for this summer - and now we get nothing more than a nice looking webserver with CDI?

  • 3. Re: jboss-as-client 7.0.0.CR1?
    Dejan Kitic Newbie

    Sadly yes :

    "JBoss AS 7.0 will have EJB3.1 lite functionality (which is part of EE web-profile) and doesn't feature remote invocation on EJBs. Remote invocation will be supported in 7.1 release of JBoss AS. 7.0 will only have support for local invocation on EJBs (i.e. invoking from the same JVM where the EJB is deployed). "

     

    http://community.jboss.org/thread/168746?tstart=0

  • 4. Re: jboss-as-client 7.0.0.CR1?
    Sebastian Koske Newbie

    I wonder if there has ever been a major release of an Application Server that doesn't support RMI before?! Is there any chance of reconsidering this schedule? Is it really that much work to get this done? This still sounds like a real bad joke to me.

  • 5. Re: jboss-as-client 7.0.0.CR1?
    Sebastian Koske Newbie

    P.S. Glassfish is JEE 6 complete since february,

  • 6. Re: jboss-as-client 7.0.0.CR1?
    jaikiran pai Master

    Sebastian Koske wrote:

     

    I wonder if there has ever been a major release of an Application Server that doesn't support RMI before?! Is there any chance of reconsidering this schedule? Is it really that much work to get this done? This still sounds like a real bad joke to me.

    When AS7 development was started, the timelines were real aggressive (and still are). We have been able to accomplish a lot of useful features for 7.0 within a very short amount of time considering the nature of these features and the kind of work involved. With that in mind, we had to have a specific plan on what to deliver for 7.0. We considered that implementing the Java EE6 web-profile features for 7.0, along with the new AS7 domain management features, would be a good goal. That way we would be able to hand out 7.0, to users who'll benefit from the web-profile features and at the same time be able to get some feedback on this new version.

     

     

    Sebastian Koske wrote:

     

    Are you serious? How can you release an Application Server that can't serve remote clients?

    To be more specific, we don't support EJB remote invocations. There are other ways a remote client can be served (like http). I know you were talking about EJB remote invocations, but I wanted to be clear about that. One might argue that it wouldn't have taken a few more weeks to implement remote invocation features. If we consider remote invocations in isolation then probably yes, we might have been able to do that. But it isn't that simple given that it also involves a lot of integration and there were other set of tasks which were on higher priority and everyone working on AS7 already had their plates full (really).

     

    Sebastian Koske wrote:

     

    Are you really saying that we have to wait another half year to get this?

    For the complete, 7.1 release, probably yes. Remote invocations might be available in the very early 7.1 Alpha releases, so you might not have to wait till 7.1 Final. But if you are talking about using it in production, then yes.

    Sebastian Koske wrote:

     

    I had a hard time convincing my management that we should switch our AS 5 migration strategy from AS 6 to AS 7 because of that. They only aggreed because AS 7 was scheduled for this summer - and now we get nothing more than a nice looking webserver with CDI?

     

    We are sorry to hear that it has impacted your project timelines. But all along the plan for 7.0 was to implement the web-profile features and 7.1 have the full EE features.

     

     

    P.S. Glassfish is JEE 6 complete since february,

    We do know that. Personally, it has always been my opinion that always use the correct software/technology which serves your project right. If AS7 or JBoss AS6 does not provide what one is looking for,  for his/her project and if GlassFish or any other server does, then certainly it would be wise to use the other server. In the long run, the discussion/arguments on who released first is mere statistics and isn't much useful.

     

    Having said that, we will be glad to help you and other with any issues that you run into in 7.0. We would also appreciate any kind of contribution, not only source code but even any kind of constructive feedback to help with 7.1 release. If you have the time or are willing to give 7.0 a try with the subset of features that your project might need, then please do so and let us know if you want to see any improvements in the upcoming releases.

  • 7. Re: jboss-as-client 7.0.0.CR1?
    Sebastian Koske Newbie

    Thank you for your detailed explanations. I understand that your timeline is packed and I'm perfectly willing to give AS 7 a try - that's why I have been following, building and experimenting with it for some time now. I also see the improvements you made. But to me remote EJB invocation is such an essential feature that I never in my imagination I would have expected that anyone would leave that out of the picture.

     

    I think its not only me who wasn't aware that the new Web Profile would not include this - so the disappointment is quite huge. I have been migrating our software testwise for some weeks and so far got around all kinds of problems - the latest beeing that you get a "not yet implemented" error when using <message-driven> in ejb-jar.xml - so finally the only piece that was missing for now was to get our clients running...

     

    Also, the reason for my dissapointment is, that in my opinion the last really decent relase was 4.2.3.GA, which is ages ago. AS 5 was JEE 5 complete, but so incredibly slow that I got so many complaints from my colleques (starttime went up from 2 to more than 10 min) and customers (some reported performance losses between 20-30%). So thats why we really urge to move to the next server. Late last year you released AS 6 which looked faster, but as soon as we got familar with it and started to test, you cut the cord saying it was end-of-life and there would neither be any more service packs in the near future nor would there be a commercial support since EAP 6 would be based on AS 7 (which is a terribly confusing versioning inconsistency by the way).

     

    So now the third incarnation after AS 4 comes out - and well - only supports web applications. Maybe you can understand that from a JBoss user point of view over time this becomes a real pain. So if there is any chance of getting this done first thing in AS 7.1 alpha, please do.

  • 8. Re: jboss-as-client 7.0.0.CR1?
    Dejan Kitic Newbie

    As someone who has been runing JBoss AS since 3.2 version I must agree with Sebastian, as he has put it well in his post. I have made a painfull mistake in regards to migrating from 4.2 to 5.0 then 5.1, and thought by that expirience I have only started to test now both AS6 and AS7.

    AS6 looked promising in terms of performanse comparing to AS5, but then all the sudden EOL coupled with few bugs, and AS7 with lots of missing bits and pieces, certainly most important of them all remote ejb invocation.

    I must say AS7 looks great, I have been able to port lots of our applications, with little or no problems at all, to AS7  along with migration from jsf 1.2 to jsf 2.0, and things looked great. The real show stopper for anything more then testing is lack of remote ejb invocation, and judging by the informations that at least 6-12 months away, this all leaves bitter taste as we have tens of jboss servers running, and now are either left to wait till 7.1(Alpha) or switch to something else.

    Looking back, JBoss AS was perfect for our needs, but with all this, perhaps jaikiran pai is right about switching to something else, be it lightwaight version of tomcat+spring or big guns like glassfish server.

  • 9. Re: jboss-as-client 7.0.0.CR1?
    jaikiran pai Master

    Sebastian Koske wrote:

     

    Thank you for your detailed explanations. I understand that your timeline is packed and I'm perfectly willing to give AS 7 a try

    Thank you.

     

    Sebastian Koske wrote:

     

     

    I think its not only me who wasn't aware that the new Web Profile would not include this - so the disappointment is quite huge.

    I think even though the spec clearly lists down what constitutes a web profile and what consistutes a full profile, it's still a challenge that many users/developers aren't aware of the difference. However, I am not blaming you for being unaware of the difference.

    Sebastian Koske wrote:

     

    Late last year you released AS 6 which looked faster, but as soon as we got familar with it and started to test, you cut the cord saying it was end-of-life and there would neither be any more service packs in the near future

    Actually, that's not completely true. There's still plan for a 6.1.0  release http://community.jboss.org/thread/164948?tstart=0. Infact there have been community contributions towards 6.1.0 already.

     

    Sebastian Koske wrote:

     

    So if there is any chance of getting this done first thing in AS 7.1 alpha, please do.

    From an EJB point of view, that's one of the main features that remains to be done. So yes, we definitely have plans for that in 7.1 Alpha1 https://issues.jboss.org/browse/AS7-423. Thanks for the feedback and thanks for understanding.

  • 10. Re: jboss-as-client 7.0.0.CR1?
    Kabir Khan Master

    I have created a hack for being able to invoke EJBs remotely here: https://github.com/kabir/as7-remote

     

     

    It is still a bit rough around the edges since I don't want to spend too much time on it until someone says if they are interested in this or not. Ideally if it is useful to someone, they can get involved in this. DISCLAIMER: This is a temporary stop-gap until we support proper remote invocations :-)

     

     

    Instead of doing JNDI lookups on the client, I am forwarding lookup requests to an MBean that is deployed as part of an ear. So instead of

    InitialContext ctx = new InitialContext();

    TestStateless bean = ctx.lookup("java:global/test/test-ejb/TestStatelessBean");

    You need to do

    Client client = ClientFactory.INSTANCE.getOrCreateClient(new ObjectName("jboss:name=test,type=remote"), "localhost", 1090); //This only needs doing once to initialize the client

    TestStateless bean = client.lookup("java:global/test/test-ejb/TestStatelessBean");

    https://github.com/kabir/as7-remote/blob/master/src/test/java/org/jboss/as/remote/jmx/test/EjbInEarTestCase.java deploys an ear containing the sar and an ejb jar.

     

    The sar's META-INF/jboss-service.xml lets you explicitly declare the jndi names of EJBs that should be exposed via this mechanism:

    <server xmlns="urn:jboss:service:7.0"

          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

          xsi:schemaLocation="urn:jboss:service:7.0 jboss-service_7_0.xsd">

     

     

        <mbean name="jboss:name=test,type=remote" code="org.jboss.as.remote.jmx.mbean.RemoteEjb">

          <!--  A comma separated list of jndi names of stateless session beans -->

          <attribute name="statelessBeanNames">java:global/test/test-ejb/TestStatelessBean</attribute>

          <!--  A comma separated list of jndi names of stateful session beans -->

          <attribute name="statefulBeanNames">java:global/test/test-ejb/TestStatefulBean</attribute>

        </mbean>

    </server>

     

    The EJBs are then looked up on the server by the MBean which then returns a proxy allowing the remote client to invoke upon the EJBs by invoking via the MBean again. EJBs not declared are not accessible via this mechanism.

     

     

    It works fine for simple cases but has the following limitations:

    • If an EJB method were to return a reference interface to another EJB that will not work at the moment.
    • Only EJBs exposing interfaces are supported, in other words the no-interface views are not handled.
    • For stateful session beans you need to put the @Remove annotation on the interface method as well as the bean class method.
    • Asynchronous invocations are not handled
    • I think the MBean needs to be deployed as part of the EAR containing the EJBs. Making it possible to load things from other deployments should be simple if someone wants that.
    • Probably a load of other stuff I haven't thought of :-)

     

    I obviously have all the AS 7 stuff in my local maven repository so if someone is having problems building it due to missing maven artifacts please let me know and I'll fix. Also, the test included relies on a AS 7 CR 1 instance being up and running.

  • 11. Re: jboss-as-client 7.0.0.CR1?
    Kabir Khan Master

    Another limitation is it makes no attempt to propagate security or transactions from client to server.

  • 12. Re: jboss-as-client 7.0.0.CR1?
    Sebastian Koske Newbie

    Hi,

     

    thanks for the effort. Unfortunately we need the real solution for using our code in the real world. We were planning to migrate to AS 7 Final this summer. Since this is obviously not possible, it saves us a lot of time. So we will use it to test if we can get JPA 2.0 and CDI running in JBoss 5 and also to get an in-depth overview of glassfish - maybe we can migrate there in the same time. Later we will then also have a look at 7.1.0 Alpha 1 to see how the story goes on...

  • 13. Re: jboss-as-client 7.0.0.CR1?
    Bernhard Günter Newbie

    Hi Sebastian,

    we struggeled in the same problem. Wanted to migrate this summer - but not JBoss 7.0 :-(

  • 14. Re: jboss-as-client 7.0.0.CR1?
    Sebastian Koske Newbie

    http://community.jboss.org/thread/167716?tstart=30

    rabbia umair wrote:

     

    I am about to start working on a JavaEE based desktop application running on JBoss 7. So is it the right time to select JBoss 7?

     

    Desktop application? If you mean Java EE application, then yes, choosing JBoss AS7 would be appropriate since a 7.0 release is coming soon.

1 2 Previous Next