Bug 778423 (SOA-906)

Summary: Default configuration (run -c default) should not be headless
Product: [JBoss] JBoss Enterprise SOA Platform 4 Reporter: Burr Sutter <burr.sutter>
Component: Documentation, Configuration, Monitoring and ManagementAssignee: Dana Mison <dmison>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: 4.3 IR5   
Target Milestone: ---   
Target Release: 4.3 CP01   
Hardware: Unspecified   
OS: Unspecified   
URL: http://jira.jboss.org/jira/browse/SOA-906
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-02-25 19:51:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Burr Sutter 2008-10-01 23:14:45 UTC
Affects: Documentation (Ref Guide, User Guide, etc.), Compatibility/Configuration, Release Notes
Date of First Response: 2008-10-01 21:24:46
project_key: SOA

run.bat and run.conf have 
-Djava.awt.headless=true

This prevents the groovy_gateway quickstart from running properly.  It also prevents the HSQL Database Manager from running.  You get to the HSQL DB Mgr from the JMX Console and selecting the startDatabaseManager MBean operation on a hypersonic datasource.

Both of these tools are very useful for developers and the default configuration is supposed to be developer friendly.  

We should verify that the EAP has headless=true for the default configuration, if it does then we should push this bug over to EAP and document how to workaround it in SOA-P.

Comment 1 Len DiMaggio 2008-10-02 01:24:46 UTC
Headless was set for the embedded console

https://jira.jboss.org/jira/browse/SOA-654

But - we're no longer shipping that console with 4.3 - does the enterprise console need this set also?



Comment 2 Len DiMaggio 2008-10-02 01:25:00 UTC
Link: Added: This issue is related to SOA-654


Comment 3 Mark Little 2008-10-04 08:28:51 UTC
Sounds like we need to reopen 654 and move it to a later release date, and then undo the changes it caused for this release.

Comment 4 Mark Little 2008-10-04 09:16:11 UTC
Assigning to J to spread the load.

Comment 5 trev 2008-10-06 13:55:41 UTC
 it was originally added for   https://jira.jboss.org/jira/browse/SOA-227 which implies that it is needed to allow linux services to run

Comment 6 Len DiMaggio 2008-10-06 16:41:52 UTC
The DB manager (in AS) is a swing app - https://jira.jboss.org/jira/browse/JBPAPP-180 - needs headless or the app can't open  IF the AS server is run as Linux service.

We (SOA-P 4.3 and the new enterprise console) cannot be headless.

Seems like the best option is that we run without -headless for the new console and document the need for the headless setting for users that want the DB app?  

It cannot be both - right?



Comment 7 Len DiMaggio 2008-10-06 17:43:18 UTC
I'm checking EAP 4.3 now - it might only be set to headless in the RPM-based init script - Since in the RPMs, the server is by default a Linux service...



Comment 8 Len DiMaggio 2008-10-06 18:14:12 UTC
EAP 4.3:

1) From /etc/init.d/jbossas - as distributed in the RPMs:

   159  # Set the awt.headless option
   160  JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true"
   161  export JAVA_OPTS

2) From EAP as distributed in .zip:

[ldimaggi@ldimaggi bin]$ pwd
/opt/EAP/jboss-eap-4.3/jboss-as/bin

[ldimaggi@ldimaggi bin]$ grep -i headless *
<no matches>



Comment 9 Len DiMaggio 2008-10-06 19:31:55 UTC
Proposition:

We ship the startup script as is from EAP, so that the JON console is happy. And document the problem in SOA-227.

'Opinions anyone?



Comment 10 Burr Sutter 2008-10-06 20:11:14 UTC
I think we should be consistent with EAP.  if headless=true is associated with the default configuration then this means the hsql db manager will not be available and a developer will need to set headless=false to enable the db mgr and in our case the groovy-gateway.  We'll just want to document that in the readme.txt of quickstarts\groovy_gateway at a minimum since this example won't work "out of the box".

Comment 11 Len DiMaggio 2008-10-07 16:56:46 UTC
Affects: Added: [Documentation (Ref Guide, User Guide, etc.), Compatibility/Configuration, Release Notes]


Comment 12 trev 2008-10-08 13:37:30 UTC
correct

Comment 13 Len DiMaggio 2008-10-08 15:29:09 UTC
Sorry - one more time:

1) The EMBEDDED console requires headless=true

2) The groovy_gateway quickstart requires headless=false

3) Running the SOA-P server as a Linux service requires headless=false for the HSQL DB manager swing GUI to work - note that the fix first called for in JBAPP-180 was for the server to display an understandable error message to the user if he tried to run the HSQL DB manager when the server was running as a Linux service - and running as headless

4) The ENTERPRISE console does not care as it runs its own server

Our plan is to be consistent with SOA-P 4.2 and EAP (as packaged in RPMs) and ship headless=true and document (2) and (3) above now?


Comment 14 Len DiMaggio 2008-10-08 15:39:50 UTC
Link: Added: This issue is related to JBPAPP-180


Comment 15 Len DiMaggio 2008-10-08 15:39:51 UTC
Link: Added: This issue is related to SOA-227


Comment 16 Julian Coleman 2008-10-10 12:10:02 UTC
I suggest adding text for the HSQL DB Mgr as a `Note' at the end of section 2.2
(Starting JBoss Enterprise SOA Platform) in the Getting Started Guide.  Something
like:

  The default setting for the SOA Platform is `java.awt.headless=true'.  Change
  this to `java.awt.headless=false' in the run.conf or run.bat script, as appropriate,
  in order to run graphical applications on the server, such as the HSQLDB manager
  in the JMX console.


I also suggest adding text about the groovy_gateway quickstart to section 3.4
(Running other Quickstarts) in the Getting Started Guide.  Something like the
following appended to the opening paragraph:

  Note also that the `groovy_gateway' quickstart will not run with the default
  setting of `java.awt.headless=true'.  Change this to `java.awt.headless=false'
  in the run.conf or run.bat script, as appropriate.

Comment 17 Dana Mison 2008-10-15 00:37:15 UTC
Content added to Release Notes under Known Issues:

8.1. groovy_gateway Quickstart & HSQLDB Manager incompatible with 'headless' server
The default configuration for the SOA Platform includes the setting java.awt.headless set to true.
This is required for the embedded console to function. However both the groovy_gateway
Quickstart and the Hypersonic database manager require that this value be set to false and will not
work. If you require either of these items you can change this setting in run.conf, but doing this will
disable the embedded console.
Additional information: http://jira.jboss.org/jira/browse/SOA-906

Content added to Getting Started Guide under 3.4. Running other Quickstarts
Warning
The groovy_gateway Quickstart does not work when the server is running
in 'headless' mode. The SOA Platform runs in this mode by default due to the
requirements of other components. More details regarding this can be found in
the known issues section of the SOA Platform Release Notes and online at http://
jira.jboss.org/jira/browse/SOA-906 .


Comment 18 Len DiMaggio 2009-02-25 19:51:03 UTC
Verified in 4.3CP01 CR2 release notes doc and Getting Started Guide here: 

https://svn.corp.jboss.com/repos/soa/branches/4.3/build-tools/docs/esb/