tomee-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From conflue...@apache.org
Subject [CONF] OpenEJB > Source Code
Date Tue, 28 Dec 2010 07:41:02 GMT
<html>
<head>
    <base href="https://cwiki.apache.org/confluence">
            <link rel="stylesheet" href="/confluence/s/1810/9/1/_/styles/combined.css?spaceKey=OPENEJB&amp;forWysiwyg=true"
type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://cwiki.apache.org/confluence/display/OPENEJB/Source+Code">Source
Code</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://cwiki.apache.org/confluence/display/~jean-louis.monteiro@atosorigin.com">Jean-Louis
MONTEIRO</a>
    </h4>
        <br/>
                         <h4>Changes (1)</h4>
                                 
    
<div id="page-diffs">
            <table class="diff" cellpadding="0" cellspacing="0">
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >It&#39;s not yet known how to
see the progress of the checkout as mvn scm:checkout checks out the sources non-interactively.
It&#39;s worth to know about the command, though, as it doesn&#39;t require the subversion
client. <br> <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">h1.
Continuous integration <br> <br>Apache OpenEJB continuous integration relies on
Builtbot. <br>All builders are available [from the page|http://ci.apache.org/builders].
<br> <br>* [Apache OpenEJB under Ubuntu|http://ci.apache.org/builders/openejb-trunk-ubuntu]
<br>* [Apache OpenEJB under Windows using a Sun/Oracle JDK|http://ci.apache.org/builders/openejb-trunk-win-sunjdk]
<br>* [Apache OpenEJB under Windows using an IBM JDK|http://ci.apache.org/builders/openejb-trunk-win-ibmjdk6]
<br> <br> <br></td></tr>
            <tr><td class="diff-unchanged" >h1. Building <br> <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
        </table>
</div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h1><a name="SourceCode-Browsing"></a>Browsing</h1>

<p>You can browse the source code via the <a href="http://svn.apache.org/viewvc/openejb/trunk/"
class="external-link" rel="nofollow">web interface</a>.</p>

<h1><a name="SourceCode-Downloading"></a>Downloading</h1>

<p>You can download (aka checkout) the sources of Apache OpenEJB with Subversion client
using the following URL <a href="http://svn.apache.org/repos/asf/openejb/trunk/openejb3"
class="external-link" rel="nofollow">http://svn.apache.org/repos/asf/openejb/trunk/openejb3</a>.</p>

<p>Performing the checkout from the command line using the subversion client is as easy
as executing the following command:</p>
<blockquote>
<p>$ svn co <a href="http://svn.apache.org/repos/asf/openejb/trunk/openejb3" class="external-link"
rel="nofollow">http://svn.apache.org/repos/asf/openejb/trunk/openejb3</a></p></blockquote>

<p>If you are experiencing problems with errors like "400 Bad Request (<a href="http://svn.apache.org"
class="external-link" rel="nofollow">http://svn.apache.org</a>)", try using:</p>
<blockquote>
<p>$ svn co <a href="https://svn.apache.org/repos/asf/openejb/trunk/openejb3" class="external-link"
rel="nofollow">https://svn.apache.org/repos/asf/openejb/trunk/openejb3</a></p></blockquote>

<p>or alternatively with Apache Maven 2 or later:</p>
<blockquote>
<p>mvn scm:checkout -DconnectionUrl=scm:svn:<a href="http://svn.apache.org/repos/asf/openejb/trunk/openejb3"
class="external-link" rel="nofollow">http://svn.apache.org/repos/asf/openejb/trunk/openejb3</a>
-DcheckoutDirectory=openejb3</p></blockquote>

<p>It's not yet known how to see the progress of the checkout as mvn scm:checkout checks
out the sources non-interactively. It's worth to know about the command, though, as it doesn't
require the subversion client.</p>

<h1><a name="SourceCode-Continuousintegration"></a>Continuous integration</h1>

<p>Apache OpenEJB continuous integration relies on Builtbot.<br/>
All builders are available <a href="http://ci.apache.org/builders" class="external-link"
rel="nofollow">from the page</a>.</p>

<ul>
	<li><a href="http://ci.apache.org/builders/openejb-trunk-ubuntu" class="external-link"
rel="nofollow">Apache OpenEJB under Ubuntu</a></li>
	<li><a href="http://ci.apache.org/builders/openejb-trunk-win-sunjdk" class="external-link"
rel="nofollow">Apache OpenEJB under Windows using a Sun/Oracle JDK</a></li>
	<li><a href="http://ci.apache.org/builders/openejb-trunk-win-ibmjdk6" class="external-link"
rel="nofollow">Apache OpenEJB under Windows using an IBM JDK</a></li>
</ul>



<h1><a name="SourceCode-Building"></a>Building</h1>

<p>To build the code, you'll need to grab a copy of <a href="http://maven.apache.org"
class="external-link" rel="nofollow">Apache Maven</a> version 2.0.4 or later.  The
standard build command is as follows:</p>
<blockquote>
<p>$ cd openejb3<br/>
$ mvn -Dassemble clean install</p></blockquote>
<p>or alternatively when on Unix-like OSes</p>
<blockquote>
<p>$ cd openejb3<br/>
$ mvn &#45;o &#45;Dmaven.{test,itest}.skip &#45;Dassemble clean install</p></blockquote>
<p>Running with the <b>assemble</b> option turned on enables a profile that
builds OpenEJB's assemblies (distros). They live in <b>assembly</b> directory.
You can remove it from the command line if you're not interested in them - just remove &#45;Dassemble
from the command line and you're ready to go.</p>

<p><b>NOTE:</b> When importing a project into an IDE (Eclipse, NetBeans,
IDEA) you should run with the assemble profile on. It's because the assembly modules are only
included in the M2 run when the property is set.</p>

<div class='panelMacro'><table class='infoMacro'><colgroup><col width='24'><col></colgroup><tr><td
valign='top'><img src="/confluence/images/icons/emoticons/information.gif" width="16"
height="16" align="absmiddle" alt="" border="0"></td><td><b>Solution
for a possible OutOfMemoryError</b><br />It's likely you run into the infamous
OutOfMemoryError and the solution is to increase the available memory for Apache Maven. Depending
on the system you're working on, the fix can be as easy as <em>export MAVEN_OPTS=-Xmx512m</em>
on MacOS and Unices or <em>set MAVEN_OPTS=-Xmx512m</em> on MS Windows.</td></tr></table></div>

<p>The output of that command should end with "BUILD SUCCESSFUL"</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] ------------------------------------------------------------------------
[INFO] OpenEJB ............................................... SUCCESS [3.722s]
[INFO] OpenEJB :: Dependencies ............................... SUCCESS [0.086s]
[INFO] OpenEJB :: Dependencies :: JavaEE API ................. SUCCESS [8.045s]
[INFO] OpenEJB :: iTests ..................................... SUCCESS [0.125s]
[INFO] OpenEJB :: iTests Beans ............................... SUCCESS [9.072s]
[INFO] OpenEJB :: iTests Servlets ............................ SUCCESS [3.372s]
[INFO] OpenEJB :: iTests Client .............................. SUCCESS [8.105s]
[INFO] OpenEJB :: iTests Interceptor Beans ................... SUCCESS [0.578s]
[INFO] OpenEJB :: iTests App ................................. SUCCESS [4.260s]
[INFO] OpenEJB :: iTests Web ................................. SUCCESS [1.110s]
[INFO] OpenEJB :: Container .................................. SUCCESS [0.050s]
[INFO] OpenEJB :: Container :: API ........................... SUCCESS [0.316s]
[INFO] OpenEJB :: Container :: Loader ........................ SUCCESS [1.050s]
[INFO] OpenEJB :: Container :: Java Agent .................... SUCCESS [0.600s]
[INFO] OpenEJB :: Container :: Java EE ....................... SUCCESS [11.098s]
[INFO] OpenEJB :: Container :: Core .......................... SUCCESS [18.659s]
[INFO] OpenEJB :: Container :: Spring ........................ SUCCESS [1.565s]
[INFO] OpenEJB :: Container :: Core :: OSGi .................. SUCCESS [1.285s]
[INFO] OpenEJB :: Container :: Core :: OSGi .................. SUCCESS [1.594s]
[INFO] OpenEJB :: Container :: ActiveMQ4 ..................... SUCCESS [1.169s]
[INFO] OpenEJB :: Container :: JUnit ......................... SUCCESS [1.321s]
[INFO] OpenEJB :: Server ..................................... SUCCESS [0.085s]
[INFO] OpenEJB :: Server :: Client ........................... SUCCESS [1.882s]
[INFO] OpenEJB :: Server :: Core ............................. SUCCESS [1.311s]
[INFO] OpenEJB :: Server :: Multicast Discovery .............. SUCCESS [0.835s]
[INFO] OpenEJB :: Server :: EJBd ............................. SUCCESS [1.102s]
[INFO] OpenEJB :: Server :: Admin ............................ SUCCESS [0.702s]
[INFO] OpenEJB :: Server :: Http ............................. SUCCESS [1.228s]
[INFO] OpenEJB :: Server :: WebAdmin ......................... SUCCESS [1.398s]
[INFO] OpenEJB :: Server :: Telnet ........................... SUCCESS [0.839s]
[INFO] OpenEJB :: Server :: ActiveMQ ......................... SUCCESS [0.475s]
[INFO] OpenEJB :: Server :: CORBA ............................ SUCCESS [0.478s]
[INFO] OpenEJB :: Server :: Derby Network Service ............ SUCCESS [0.643s]
[INFO] OpenEJB :: Server :: Hsql ............................. SUCCESS [0.700s]
[INFO] OpenEJB :: Server :: Webservices ...................... SUCCESS [1.289s]
[INFO] OpenEJB :: Server :: Axis ............................. SUCCESS [1.588s]
[INFO] OpenEJB :: Server :: Axis2 ............................ SUCCESS [9.477s]
[INFO] OpenEJB :: Server :: CXF .............................. SUCCESS [2.384s]
[INFO] OpenEJB :: Examples :: @ApplicationException inheritance  SUCCESS [0.535s]
[INFO] OpenEJB :: Examples :: Simple Stateful Pojo ........... SUCCESS [0.312s]
[INFO] OpenEJB :: Examples :: Simple Stateless Pojo .......... SUCCESS [0.163s]
[INFO] OpenEJB :: Examples :: Simple Stateless With Deployment Descriptor  SUCCESS [0.123s]
[INFO] OpenEJB :: Examples :: Simple Singleton ............... SUCCESS [0.177s]
[INFO] OpenEJB :: Examples :: Simple MDB Example ............. SUCCESS [0.145s]
[INFO] OpenEJB :: Examples :: Simple MDB Using Deployment Descriptor Example  SUCCESS [0.133s]
[INFO] OpenEJB :: Examples :: Simple CMP2 Entity ............. SUCCESS [0.201s]
[INFO] OpenEJB :: Examples :: Simple Webservice .............. SUCCESS [0.523s]
[INFO] OpenEJB :: Examples :: EJB 2.1 Component Interfaces ... SUCCESS [0.162s]
[INFO] OpenEJB :: Examples :: @EJB Injection ................. SUCCESS [0.152s]
[INFO] OpenEJB :: Examples :: @Resource env-entry Injection .. SUCCESS [0.414s]
[INFO] OpenEJB :: Examples :: @Resource DataSource Injection . SUCCESS [0.211s]
[INFO] OpenEJB :: Examples :: @PersistenceContext EntityManager Injection  SUCCESS [0.271s]
[INFO] OpenEJB :: Examples :: @Resource javax.jms.ConnectionFactory  SUCCESS [0.142s]
[INFO] OpenEJB :: Examples :: Testing Transactions ........... SUCCESS [0.168s]
[INFO] OpenEJB :: Examples :: Testing Security ............... SUCCESS [0.159s]
[INFO] OpenEJB :: Examples :: Testing Security ............... SUCCESS [0.129s]
[INFO] OpenEJB :: Examples :: TestCase Injection ............. SUCCESS [0.148s]
[INFO] OpenEJB :: Examples :: Alternate Descriptors .......... SUCCESS [0.168s]
[INFO] OpenEJB :: Examples :: Ear Testing .................... SUCCESS [0.820s]
[INFO] OpenEJB :: Examples :: Ear Testing :: Business Model .. SUCCESS [0.170s]
[INFO] OpenEJB :: Examples :: Ear Testing :: Business Logic .. SUCCESS [0.168s]
[INFO] OpenEJB :: Examples :: Interceptors ................... SUCCESS [0.193s]
[INFO] OpenEJB :: Examples :: Expanded support for Env Entries  SUCCESS [0.207s]
[INFO] OpenEJB :: Examples :: Hello World - Weblogic ......... SUCCESS [0.115s]
[INFO] OpenEJB :: Examples :: JPA with Hibernate ............. SUCCESS [0.248s]
[INFO] OpenEJB :: Examples :: JPA with EclipseLink ........... SUCCESS [0.327s]
[INFO] OpenEJB :: Examples :: Spring Integration ............. SUCCESS [0.309s]
[INFO] OpenEJB :: Examples :: Telephone Stateful Pojo ........ SUCCESS [0.324s]
[INFO] Quartz App ............................................ SUCCESS [0.019s]
[INFO] Quartz Resource Adapter ............................... SUCCESS [0.117s]
[INFO] Quartz Beans .......................................... SUCCESS [0.246s]
[INFO] OpenEJB :: Examples :: Webservice Attachments ......... SUCCESS [0.168s]
[INFO] OpenEJB :: Web Examples :: EJB Examples War ........... SUCCESS [5.999s]
[INFO] OpenEJB :: Web Examples :: EJB WebService ............. SUCCESS [0.293s]
[INFO] OpenEJB :: Examples ................................... SUCCESS [0.086s]
[INFO] OpenEJB :: Web Examples ............................... SUCCESS [0.117s]
[INFO] OpenEJB :: Web Examples :: JSF with MyFaces ........... SUCCESS [3.766s]
[INFO] OpenEJB :: Web Examples :: Struts ..................... SUCCESS [3.711s]
[INFO] OpenEJB :: Web Examples :: EJB WebService ............. SUCCESS [0.462s]
[INFO] OpenEJB :: Web Examples :: EJB WebService with Security  SUCCESS [0.328s]
[INFO] OpenEJB :: Web Examples :: EJB WebService with WS-Security  SUCCESS [8.771s]
[INFO] OpenEJB :: Examples :: Webservice Inheritance ......... SUCCESS [0.251s]
[INFO] OpenEJB :: Examples :: Transaction Rollback ........... SUCCESS [0.184s]
[INFO] OpenEJB :: Examples :: Troubleshooting ................ SUCCESS [0.298s]
[INFO] OpenEJB :: Assembly ................................... SUCCESS [0.050s]
[INFO] OpenEJB :: Assembly :: WebApp :: Common ............... SUCCESS [0.892s]
[INFO] OpenEJB :: Assembly :: iTests Standalone Client ....... SUCCESS [33.361s]
[INFO] OpenEJB :: Assembly :: Standalone ..................... SUCCESS [1:15.053s]
[INFO] OpenEJB :: Assembly :: Tomcat ......................... SUCCESS [0.082s]
[INFO] OpenEJB :: Assembly :: Tomcat :: Loader ............... SUCCESS [0.375s]
[INFO] OpenEJB :: Assembly :: Tomcat :: Common ............... SUCCESS [2.010s]
[INFO] OpenEJB :: Assembly :: Tomcat :: Catalina ............. SUCCESS [8.560s]
[INFO] OpenEJB :: Assembly :: Tomcat :: Webapp ............... SUCCESS [15.255s]
[INFO] OpenEJB :: Assembly :: Tomcat :: Bundle ............... SUCCESS [44.881s]
[INFO] OpenEJB :: Assembly :: Jetty .......................... SUCCESS [0.267s]
[INFO] OpenEJB :: Assembly :: Jetty :: Loader ................ SUCCESS [0.221s]
[INFO] OpenEJB :: Assembly :: Jetty :: Common ................ SUCCESS [0.455s]
[INFO] OpenEJB :: Assembly :: Jetty :: Webapp ................ SUCCESS [8.406s]
[INFO] OpenEJB :: Assembly :: Webapp ......................... SUCCESS [7.104s]
[INFO] OpenEJB :: Assembly :: Java EE API Libraries .......... SUCCESS [1.787s]
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5 minutes 40 seconds
[INFO] Finished at: Sat Jun 19 20:49:51 CEST 2010
[INFO] Final Memory: 153M/338M
[INFO] ------------------------------------------------------------------------
</pre>
</div></div>

<h1><a name="SourceCode-Running"></a>Running</h1>

<p>Provided you have successfully built OpenEJB with the assemble option turned on,
you can find assemblies in the <b>target</b> directories beneath the <b>assembly</b>
directory of each custom assembly. Go to the assembly directory and have a look at its content.</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>jacek@devmac /Users/jacek/oss/openejb3/assembly
$ ls -l
total 8
drwxr-xr-x   6 jacek  staff   204 Jun 19 20:49 javaee-api-libs
drwxr-xr-x   6 jacek  staff   204 Jun 19 20:46 openejb-itests-standalone-client
drwxr-xr-x   8 jacek  staff   272 Jun 19 20:49 openejb-jetty
drwxr-xr-x   9 jacek  staff   306 Jun 19 20:47 openejb-standalone
drwxr-xr-x  12 jacek  staff   408 Jun 19 20:48 openejb-tomcat
drwxr-xr-x   6 jacek  staff   204 Jun 19 20:49 openejb-webapp
drwxr-xr-x   6 jacek  staff   204 Jun 19 20:46 openejb-webapp-common
-rw-r--r--   1 jacek  staff  1726 Jun  1 22:51 pom.xml
drwxr-xr-x   4 jacek  staff   136 Jun 19 20:46 target
drwxr-xr-x   4 jacek  staff   136 Jun  1 22:51 test
</pre>
</div></div>
<p>The most common choice is to go to openejb-standalone which is exactly what the name
stands for - it lets you get OpenEJB up and running from a command line with no additional
configuration - in other words you can play with your EJBs right away. Looking at the <b>openejb-standalone/target</b>
directory reveals the tar.gz'ed and zip'ed distributions. Unpack one and give it a go.</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>jacek@devmac /Users/jacek/oss/openejb3/assembly/openejb-standalone/target
$ jar -xvf openejb-3.2-SNAPSHOT.zip
 created: openejb-3.2-SNAPSHOT/
 ...

jacek@devmac /Users/jacek/oss/openejb3/assembly/openejb-standalone/target
$ cd openejb-3.2-SNAPSHOT

jacek@devmac /Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT
$ chmod +x ./bin/openejb

jacek@devmac /Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT
$ ./bin/openejb start
ERROR - Logging may not operate as expected.  The directories for the following files do not
exist so no file can be created.  See the list below.
ERROR - [0] /Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT/conf/logs/transaction.log
ERROR - [1] /Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT/conf/logs/openejb.log
Apache OpenEJB 3.2-SNAPSHOT    build: 20100619-08:45
http://openejb.apache.org/
log4j:WARN No appenders could be found for logger (org.apache.openejb.resource.activemq.ActiveMQResourceAdapter).
log4j:WARN Please initialize the log4j system properly.
[init] OpenEJB Remote Server
Jun 19, 2010 9:00:58 PM org.apache.cxf.bus.spring.BusApplicationContext getConfigResources
INFO: No cxf.xml configuration file detected, relying on defaults.
  ** Starting Services **
  NAME                 IP              PORT  
  httpejbd             127.0.0.1       4204  
  admin thread         127.0.0.1       4200  
  ejbd                 127.0.0.1       4201  
  ejbd                 127.0.0.1       4203  
  hsql                 127.0.0.1       9001  
  telnet               127.0.0.1       4202  
-------
Ready!
</pre>
</div></div>

<p>There's another, slightly less error-prone approach using a shell script - <em>try.sh</em>
- that's tailor-made for that particular task - running OpenEJB 3 right after it's been built
locally. No need to remember these aforementioned steps but the mere name of the script itself</p>

<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>jacek@devmac /Users/jacek/oss/openejb3/assembly/openejb-standalone
$ ./try.sh
x openejb-3.2-SNAPSHOT/lib/xmlsec-1.4.3.jar
...
ERROR - Logging may not operate as expected.  The directories for the following files do not
exist so no file can be created.  See the list below.
ERROR - [0] /Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT/conf/logs/transaction.log
ERROR - [1] /Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT/conf/logs/openejb.log
Apache OpenEJB 3.2-SNAPSHOT    build: 20100619-08:45
http://openejb.apache.org/
2010-06-19 21:09:35,780 - INFO  - openejb.home = /Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT
2010-06-19 21:09:35,782 - INFO  - openejb.base = /Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT
...
2010-06-19 21:09:53,376 - INFO  - [Server@230cc23b]: [Thread[main,5,main]]: checkRunning(false)
entered
2010-06-19 21:09:53,376 - INFO  - [Server@230cc23b]: [Thread[main,5,main]]: checkRunning(false)
exited
  ** Starting Services **
  NAME                 IP              PORT  
  httpejbd             127.0.0.1       4204  
  admin thread         127.0.0.1       4200  
  ejbd                 127.0.0.1       4201  
  ejbd                 127.0.0.1       4203  
2010-06-19 21:09:54,475 - INFO  - [Server@230cc23b]: Initiating startup sequence...
2010-06-19 21:09:54,479 - INFO  - [Server@230cc23b]: Server socket opened successfully in
1 ms.
2010-06-19 21:09:54,651 - INFO  - [Server@230cc23b]: Database [index=0, id=0, db=file:/Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT/data/hsqldb/hsqldb,
alias=hsqldb] opened sucessfully in 171 ms.
2010-06-19 21:09:54,651 - INFO  - [Server@230cc23b]: Startup sequence completed in 175 ms.
2010-06-19 21:09:54,656 - INFO  - [Server@230cc23b]: 2010-06-19 21:09:54.656 HSQLDB server
1.8.0 is online
2010-06-19 21:09:54,656 - INFO  - [Server@230cc23b]: To close normally, connect and execute
SHUTDOWN SQL
2010-06-19 21:09:54,656 - INFO  - [Server@230cc23b]: From command line, use [Ctrl]+[C] to
abort abruptly
  hsql                 127.0.0.1       9001  
  telnet               127.0.0.1       4202  
-------
Ready!
</pre>
</div></div>

<p>The old 2 finger salute - Ctrl-C - stops the OpenEJB instance.</p>


<h1><a name="SourceCode-Debugging"></a>Debugging</h1>

<p>Once you have built the source, you may debug it by starting OpenEJB with debug options.
There are essentially two modes of operation.</p>

<p>Debug without suspending, so that the server can fully start up, and be debugged
at any point you wish. If you are in the directory where you extracted the assembly to, just
issue the following command...</p>

<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>jacek@devmac Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT
$ OPENEJB_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8001" ./bin/openejb
start
</pre>
</div></div>

<p>Debug and suspend until a debugger has been attached. This is helpful if the code
that is to be debugged happens to be some of the startup code. The following command would
achieve this mode...</p>

<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>jacek@devmac Users/jacek/oss/openejb3/assembly/openejb-standalone/target/openejb-3.2-SNAPSHOT
$ OPENEJB_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8001" ./bin/openejb
start
</pre>
</div></div>

<p>Once either mode is started, just attach your favourite development IDE or debugger,
and away you go.</p>
    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;">
            <a href="https://cwiki.apache.org/confluence/users/viewnotifications.action"
class="grey">Change Notification Preferences</a>
        </div>
        <a href="https://cwiki.apache.org/confluence/display/OPENEJB/Source+Code">View
Online</a>
        |
        <a href="https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=26791&revisedVersion=19&originalVersion=18">View
Changes</a>
                |
        <a href="https://cwiki.apache.org/confluence/display/OPENEJB/Source+Code?showComments=true&amp;showCommentArea=true#addcomment">Add
Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>

Mime
View raw message