Fwd: [jboss-as7-dev] Mirgrating a complex J2EE application from AS5 to AS7 in a proper way
by Charles Crouch
Interesting given our move to AS7
Probably a good thread to follow..
----- Forwarded Message -----
From: "Sergey Korobitsin" <undertaker(a)arta.kz>
To: jboss-as7-dev(a)lists.jboss.org
Sent: Wednesday, July 11, 2012 11:12:27 AM
Subject: [jboss-as7-dev] Mirgrating a complex J2EE application from AS5 to AS7 in a proper way
Hello all,
I'm new in this maillist, and I've found no rules or FAQ on the list,
so if I'm posting in the wrong place please advise me the right one.
I have a complex J2EE/Web application now successfully working in JBoss
AS 5, and I would like to mirgate it to AS 7. The problem is that my
application (not OpenSource) now built from sources using custom Ant
scripts, no Maven, etc., and consists of:
* Main EAR application with several WARs and EJB-JARs inside (now in
AS5 living at server/default/deploy dir)
* Several shared components as JARs (now living in AS5's
server/default/lib dir)
* External dependency libraries (e.g. mysql-connector, fontbox-1.6.0
and many other, now living in AS5's server/default/lib too)
* Complex external dependencies (e.g. JackRabbit as RAR, JBPM4 as
multiple SAR/WAR things, in AS5's deploy)
Due to JBoss AS7 moved to a considerably different class loading style
(JBoss Modules based), I need advises how to move all these to new way
properly. I'll be using standalone AS7 in nearest perspective, and
domain-based AS7 in (maybe near) future.
I've investigated an article on moving JBPM5 (only console) to AS7:
http://kverlaen.blogspot.com/2011/07/jbpm5-on-as7-lightning.html
but I see some, I think, improper ways of migrating, e.g.:
> Add the following jars from the jBPM runtime to the WEB-INF/lib folder
> of the server war: hibernate-core, hibernate-entitymanager,
> hibernate-commons-annotations, hibernate-annotations, dom4j, javassist
> [ ... skip ... ]
> Add your database driver (in our case h2.jar) to WEB-INF/lib of the
> server war
(I think these must be configured as separate Modules, maybe I'm wrong?)
The most complex question for me is how to handle my application's
dependencies in a manageable way: if I'll use Maven for building my app,
is there a way to generate AS7 module descriptions automagically from
Maven's build dependencies (also adding correct Dependencies: sections
into respective manifests)?
The other reason why I want to make all this in a proper way is a
question on my software's distributing. Now it's packaged to several
(Debian) packages, which includes a pre-configured AS package,
application's external dependencies package, and the application package
itself. So if I change pre-configuration of AS (very seldom),
dependencies (seldom), and the app itself (frequent), I can control the
update traffic and complexness for customers. I would like to save this
flexibility (and increase it, if possible) when moving to AS7.
--
Bright regards, Sergey Korobitsin,
Chief Research Officer
Arta Software, http://arta.kz/
xmpp:undertaker@jabber.arta.kz
--
BUGS
There are no bugs. Any resemblance thereof is delirium. Really.
-- man ucf.conf
_______________________________________________
jboss-as7-dev mailing list
jboss-as7-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
11 years, 9 months
I need suggestion about RHQ presentation from you guys
by Lin Gao
Hi All,
I want to make a brief introduce on RHQ at the coming JBUG event,
which will be held in Beijing China at end of this month.
I have some questions on RHQ to make some slides:
1. What does 'RHQ' stand for? Is there a full name for this?
2. How many users(just estimate) use RHQ?
3. What is the biggest competitor of RHQ?
If you have some presentation material about introduction of RHQ,
would you please share them with me for reference? Any suggestions would
be great for me.
Thank you!
--
BR
Lin Gao
11 years, 9 months
Building with maven 3.0.4 and JDK 1.7 (current state)
by Heiko W.Rupp
Hi,
I am currently looking into building RHQ with OpenJDK 1.7(*) and mvn 3.0.4 on RHEL 6.3
I see these issues:
- animal sniffer can't cope with the groovy-script-server-plugin (and 1.7 seems to have a bug wrt maven 3 anyway)
- doNotSendEmptyZipFileToServer(org.rhq.core.pc.drift.DriftFilesSenderTest) fails ( https://bugzilla.redhat.com/show_bug.cgi?id=838681 )
Failing tests in server/jar:
Failed tests: testGetForAllAgents20_1000(org.rhq.enterprise.server.cloud.FailoverListManagerBeanTest)
testGetForAllAgents5_10(org.rhq.enterprise.server.cloud.FailoverListManagerBeanTest)
testGetForAllAgents5_25(org.rhq.enterprise.server.cloud.FailoverListManagerBeanTest)
Those are failing because the distributions of agents on servers is not even (on the 5/10 test, on server has 3 agents
and another one has 1 instead of the 2/2 one).
testPrettyPrintDRIFT(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintAVAILABILITY_DURATION(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintTHRESHOLD(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintAVAILABILITY(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintCONTROL(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintBASELINE(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintCHANGE(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintCHANGE_Calltime(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintTHRESHOLD_Calltime(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintRESOURCECONFIG(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintTRAIT(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintEVENT(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
testPrettyPrintRANGE(org.rhq.enterprise.server.alert.test.AlertManagerBeanTest): could not find the condition string
Those all seem to fail in AlertManager when doing condition.getAlertDefintion().xxx as the alertDefinition is null on the condition,
which is called within AlertManagerBean.prettyPrintAlertConditions(), which is called from org.rhq.enterprise.server.alert.test.AlertManagerBeanTest#getPrettyAlertConditionString
Server tests leave the database in an unclean state. The following entries in the plugins table are still there
'PluginManagerBeanTestPlugin1', '/im/rhq/modules/enterprise/server/jar/target/test-classes/org/rhq/enterprise/server/resource/metadata//test-plugin1.jar'
'PluginManagerBeanTestPlugin2', '/im/rhq/modules/enterprise/server/jar/target/test-classes/org/rhq/enterprise/server/resource/metadata//test-plugin2.jar'
'TestPlugin', '/im/rhq/modules/enterprise/server/jar/target/test-classes/org/rhq/enterprise/server/resource/metadata//test-plugin.jar.jar'
'PluginManagerBeanTestPlugin3', '/im/rhq/modules/enterprise/server/jar/target/test-classes/org/rhq/enterprise/server/resource/metadata//test-plugin3.jar'
Which cause test inconsistencies when re-running tests.
I will open BZs
Just a note: to get the full test running, the dbuser (rhqadmin by default) needs to have the right to create databases
which can be achieved via
postgres=# alter role rhqadmin with createdb;
ALTER ROLE
*) For the time being we will constrain ourselves to JDK 1.6 language features.
--
Reg. Adresse: Red Hat GmbH, Technopark II, Haus C,
Werner-von-Siemens-Ring 14, D-85630 Grasbrunn
Handelsregister: Amtsgericht München HRB 153243
Geschaeftsführer: Mark Hegarty, Charlie Peters, Michael Cunningham, Charles Cachera
11 years, 9 months
[GSoC 2012] PyAgent, further improvements
by Krzysztof Kwaśniewski
Hi!
I have prepared a summary for the first half of my project at GSoC
2012 [1]. It's strongly connected with the presentation I have given
yesterday via Ellumination. Here I will include an excerpt from the
summary - a couple of ideas for the future:
1) simplify data mapping between CIM and RHQ
2) implement callbacks/artificial metrics
3) implement set/reset CIM operations via REST api
I won't repeat the entire blog post here, please read the details
there.
[1] http://rhqagent.blogspot.com/2012/07/half-way-behind.html
11 years, 9 months
[GSoC 2012] PyAgent, further improvements
by Krzysztof Kwaśniewski
Hi!
I have prepared a short summary for the first half of my project at
GSoC 2012 [1]. It's strongly connected with the presentation I have
given yesterday via Ellumination. Here I include an excerpt from the
summary - a couple of ideas for the future development:
1) simplify data mapping between CIM and RHQ
2) implement callbacks/artificial metrics
3) implement set/reset CIM operations via REST api
I won't repeat the entire blog post here, please read the details
there. I'm interested in your opinions on these issues. What should I
focus on now?
Cheers,
Krzysiek
[1] http://rhqagent.blogspot.com/2012/07/half-way-behind.html
11 years, 9 months
null related annotations
by Charles Crouch
Mike T's mention of @NonNull annotations this morning reminded me I'd done some research on this recently, so I thought I would send out my notes. Lets start the discussion/flamefest...
Basically I'm a big fan of anything that can help us catch NPEs at compile time rather than runtime, so I think if we can agree on an approach, we should adopt it and embrace it.
One of the issues folks have had historically is that RHQ has generally used Intellij's annotations but with nothing setup in the main mvn build to check these annotations, the only people to get any benefit from them were intellij users. Well now there are now *lots* of alternatives to intellij's:
http://stackoverflow.com/questions/4963300/which-notnull-java-annotation-...
e.g. eclipse, findbugs, jsr305, istack (from sun), javax.validation all offer their own set of annotations. We shouldn't use istack apparently: http://stackoverflow.com/a/4963565 and the javax.validation are only meant for runtime not compile time checking.
Unfortunately there is still no standardized set of annotations around handling nulls. JSR305 isn't going anywhere apparently and JSR308 won't land until jdk8 (http://stackoverflow.com/questions/1476757/jsr305-vs-jsr308-java-type-ano...)
Even more painfully there doesn't even seem to be consistency in the names of the annotations across implementations:
For things whose value can't ever be null:
@NonNull(eclipse, findbugs), @Nonnull(jsr305), @NotNull(intellij)
For things whose value can be null:
@CheckForNull(findbugs, jsr305), @Nullable(intellij, eclipse)
For things whose value if it is null, it may be fine or maybe a problem???
@Nullable(findbugs, jsr305)
[IMHO this is pointless and better just to not put any annotation]
http://findbugs.sourceforge.net/manual/annotations.html
So what can we do? Well here are the options I can think of, please add more...
1) We could keep using the intellij annotations and combine that with running findbugs as part of the main build to enforce them.
Findbugs actually has support for converting intellij annotations into one's it knows about:
http://code.google.com/searchframe#Fccnll6ERQ0/trunk/findbugs/src/java/ed...
2) We could define our own annotations and combine that with running findbugs as part of the main build to enforce them.
The only restriction is we have to use the same Classnames as findbugs, see link above, e.g. org.rhq.NonNull and org.rhq.CheckForNull
3) Or we could use the checker tool, which seems like it is going to be the RI for jsr308: http://types.cs.washington.edu/checker-framework/current/checkers-manual....
This seems by far the sophisticated and flexible solution: "Your goal is to add @Nullable annotations to the types of any variables that can be null. (The default is to assume that a variable is non-null unless it has a @Nullable annotation.) Then, you will run the Nullness Checker."
The downside with this option is that it seems to want to replace javac, with its own updated version that supports jsr308. "Eventually, you will be able to use any Java compiler, such as the OpenJDK compiler, but Oracle has been slow to incorporate all the patches, so the bundled javac is superior, for the purpose of pluggable type-checking, and is equivalent in all other respects." It's not clear to me how this would work for people just checking out RHQ or in the product build environment.
4)...
11 years, 9 months
DMTF + RHQ demo
by Heiko W.Rupp
Der folgende Sitzungstermin wurde geändert:
Betreff: DMTF + RHQ demo
Organisator: "Heiko Rupp" <hrupp(a)redhat.com>
Ort: online
Uhrzeit: Dienstag, 10. Juli 2012, 21:00:00 - 21:30:00 GMT +01:00 Amsterdam, Berlin, Bern, Rom, Stockholm, Wien [GEÄNDERT]
Eingeladene Teilnehmer: rhq-devel(a)lists.fedorahosted.org; tsmetana(a)redhat.com; asantos(a)redhat.com
*~*~*~*~*~*~*~*~*~*
Krzysztof will demo his work so far in getting data out of systems via DMTF tooling and into RHQ via the REST api.
Dial in: reservationless+ (usual conf call number for Red Hat people) -- see below for dial- in numbers
PC: 2042160481
Screen sharing via
Elluminate: https://sas.elluminate.com/m.jnlp?sid=819&password=M.E3B4F379463E8DB914B2...
Global Network Access
Toll-Free Dial-in Numbers:
Argentina : 08004441016
Australia : 1800337169
Austria : 0800005898
Bahamas : 18002054778
Bahrain : 80004377
Barbados : 18668556594
Belarus : 882000110160
Belgium : 080048325
Bolivia : 800100768
Brazil : 08008921002
Bulgaria : 008001100236
Chile : 800370228
Colombia : 018009134033
Costa Rica : 08000131048
Croatia (Hrvatska) : 0800222320
Cyprus : 80095297
Czech Republic : 800701035
Denmark : 80887114
Dominican Republic : 18887512313
Ecuador : 1800020545
Egypt : 08000000188
El Salvador : 8006699
Estonia : 8000100232
Fiji : 008002539
Finland : 0800117116
France : 0805632867
Germany : 08006647541
Greece : 00800127562
Guam : 18773010136
Hong Kong : 800930349
Hungary : 0680014726
Hungary : 0680016796
Iceland : 8008967
India : 180030104350
Indonesia : 0018030179162
Ireland : 1800932401
Israel : 1809462557
Italy : 800985897
Jamaica : 18002050328
Japan : 0120934453
Kazakhstan : 88003337376
Korea (South) : 007986517393
Latvia : 80003339
Lithuania : 880030479
Luxembourg : 80026595
Malaysia : 1800814451
Malta : 80062176
Mexico : 0018664590915
Mexico : 018009269658
Monaco : 80093642
Netherlands : 08000222329
New Zealand : 0800888167
Nicaragua : 0018002202067
Norway : 80013504
Panama : 008002269184
Peru : 080052972
Philippines : 180011100991
Poland : 008001210187
Portugal : 800814625
Romania : 0800895537
Russian Federation : 81080028341012
Saint Kitts and Nevis : 18002059252
Saudi Arabia : 8008445917
Singapore : 8006162235
Slovak Republic : 0800001441
Slovenia : 080080471
South Africa : 0800982957
Spain : 800300524
Sweden : 0200896860
Switzerland : 0800650077
Taiwan : 00801127141
Thailand : 001800656966
Trinidad and Tobago : 18002024615
Turkey : 0080044632093
Turks and Caicos Islands : 18772780472
Ukraine : 0800500152
United Arab Emirates : 8000650591
United Kingdom : 08006948057
United States : 8004518679
Uruguay : 00040190315
Venezuela : 8001627182
Vietnam : 12011346
Virgin Islands (U.S.) : 8773007428
11 years, 9 months
DMTF + RHQ demo
by Heiko W.Rupp
Neue Sitzungsanfrage:
Betreff: DMTF + RHQ demo
Organisator: "Heiko Rupp" <hrupp(a)redhat.com>
Ort: online
Uhrzeit: Dienstag, 3. Juli 2012, 21:00:00 - 21:30:00 GMT +01:00 Amsterdam, Berlin, Bern, Rom, Stockholm, Wien
Eingeladene Teilnehmer: rhq-devel(a)lists.fedorahosted.org; tsmetana(a)redhat.com; asantos(a)redhat.com
*~*~*~*~*~*~*~*~*~*
Krzysztof will demo his work so far in getting data out of systems via DMTF tooling and into RHQ via the REST api.
Dial in: reservationless+ (usual conf call number for Red Hat people) -- see below for dial- in numbers
PC: 2042160481
Screen sharing via
Elluminate: https://sas.elluminate.com/m.jnlp?sid=819&password=M.E3B4F379463E8DB914B2...
Global Network Access
Toll-Free Dial-in Numbers:
Argentina : 08004441016
Australia : 1800337169
Austria : 0800005898
Bahamas : 18002054778
Bahrain : 80004377
Barbados : 18668556594
Belarus : 882000110160
Belgium : 080048325
Bolivia : 800100768
Brazil : 08008921002
Bulgaria : 008001100236
Chile : 800370228
Colombia : 018009134033
Costa Rica : 08000131048
Croatia (Hrvatska) : 0800222320
Cyprus : 80095297
Czech Republic : 800701035
Denmark : 80887114
Dominican Republic : 18887512313
Ecuador : 1800020545
Egypt : 08000000188
El Salvador : 8006699
Estonia : 8000100232
Fiji : 008002539
Finland : 0800117116
France : 0805632867
Germany : 08006647541
Greece : 00800127562
Guam : 18773010136
Hong Kong : 800930349
Hungary : 0680014726
Hungary : 0680016796
Iceland : 8008967
India : 180030104350
Indonesia : 0018030179162
Ireland : 1800932401
Israel : 1809462557
Italy : 800985897
Jamaica : 18002050328
Japan : 0120934453
Kazakhstan : 88003337376
Korea (South) : 007986517393
Latvia : 80003339
Lithuania : 880030479
Luxembourg : 80026595
Malaysia : 1800814451
Malta : 80062176
Mexico : 0018664590915
Mexico : 018009269658
Monaco : 80093642
Netherlands : 08000222329
New Zealand : 0800888167
Nicaragua : 0018002202067
Norway : 80013504
Panama : 008002269184
Peru : 080052972
Philippines : 180011100991
Poland : 008001210187
Portugal : 800814625
Romania : 0800895537
Russian Federation : 81080028341012
Saint Kitts and Nevis : 18002059252
Saudi Arabia : 8008445917
Singapore : 8006162235
Slovak Republic : 0800001441
Slovenia : 080080471
South Africa : 0800982957
Spain : 800300524
Sweden : 0200896860
Switzerland : 0800650077
Taiwan : 00801127141
Thailand : 001800656966
Trinidad and Tobago : 18002024615
Turkey : 0080044632093
Turks and Caicos Islands : 18772780472
Ukraine : 0800500152
United Arab Emirates : 8000650591
United Kingdom : 08006948057
United States : 8004518679
Uruguay : 00040190315
Venezuela : 8001627182
Vietnam : 12011346
Virgin Islands (U.S.) : 8773007428
11 years, 9 months
"Server returned FAILURE with no error message"
by Charles Crouch
I've seen this message a few times while clicking around the UI, but never closely connected to a particular action I had performed. Are we sure this popup makes sense? What is the point of it? What is the user meant to do when they see it?
Thanks
Charles
11 years, 9 months