[
https://issues.jboss.org/browse/ARQ-1848?page=com.atlassian.jira.plugin.s...
]
Ian Brandt commented on ARQ-1848:
---------------------------------
[~sfcoy]: Thanks for the feedback. I made an effort to DRY up most of the codebase.
It's not 100% yet, but I think I've made a substantial dent. I have a few more
TODOs in mind, but I can tell tunnel vision is starting to set in. I'd welcome any
ideas you might have for further cleanup.
I chatted with [~aslak] on IRC, and he was ok with having a go at this JIRA for a
1.0.0.CR8 release on the condition that I maintain backwards compatibility. I've
attempted to do just that, and pushed a first draft to
https://github.com/arquillian/arquillian-container-tomcat/tree/ARQ-1848. This branch
includes all the cleanup done on
[
master|https://github.com/arquillian/arquillian-container-tomcat/tree/master].
I'll be testing and tidying this branch up during the coming week. I don't
readily have a way to test on Windows, so I could use help with that if anyone is
available. Of course any other feedback or concerns are also welcomed.
Tomcat managed containers should start and stop Tomcat using the
standard run scripts
-------------------------------------------------------------------------------------
Key: ARQ-1848
URL:
https://issues.jboss.org/browse/ARQ-1848
Project: Arquillian
Issue Type: Feature Request
Components: Tomcat Containers
Affects Versions: tomcat_1.0.0.CR7
Reporter: Ian Brandt
Assignee: Ian Brandt
Fix For: tomcat_1.0.0.Final
The [standard Tomcat run
scripts|http://tomcat.apache.org/tomcat-8.0-doc/RUNNING.txt]
contain a fair little bit of logic and features:
* Multiple instance support (requiring the proper merging of resources from
{{CATALINA_BASE}} and {{CATALINA_HOME}}).
* Logging configuration.
* Running with or without a security manager.
* Support for configuration in the 'setenv' script.
* Endorsed and temp directory configuration.
* Launching with JPDA related configuration.
* OS variant and TTY related configuration on UNIX.
By building the Java command to launch Tomcat directly the current
{{CommonTomcatManagedContainer}} forgoes the standard implementation of all this. There
is a growing history of bug reports and feature requests that suggest this may not be the
best approach:
* ARQ-628 - Tomcat managed throws NullPointerException when application under test brings
weld-servlet dependency
* ARQ-866 - Allow catalina.base to be configured separately from catalina.home in the
Tomcat managed adapters
* ARQ-1650 - Managed container bypasses tomcat jul setup
* ARQ-1843 - Tomcat managed container ignores javaHome configuration
* ARQ-1846 - Support configuration of the Tomcat system classpath from managed
containers
* ARQ-1847 - Support specifying JMX RMI server port
Rather than reinventing the wheel here, we should just launch and stop Tomcat with the
standard run script for the current OS, exposing it's environment variable-driven
configuration via arquillian.xml and the {{CommonTomcatManagedConfiguration}}. This
will:
* Add all the missing features and logic.
* Be simpler and presumably cheaper to maintain over trying to mirror the standard
scripts.
* Encourage better fidelity between managed containers and their production counterparts
(e.g. identical {{CATALINA_BASE}} and {{CATALINA_HOME}} merging, as well as setenv script
support).
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)