bpmscript example

2006-11-27 Thread Jamie McCrindle

hi all,

i've put together an example of a long running business process in bpmscript
that showcases some of the things you can do with bpmscript (on top of
servicemix, of course). The script looks like this:

/**
* Demonstration of BpmScript using services including:
*
* - Lightweight Email Component
* - Lightweight SOAP Component (modified)
* - BpmScript Alarm Service
*
* Example takes in a request which looks something like:
* request
*  symbolGOOG/symbol
*  min12.9/min
*  max53.9/max
*  to[EMAIL PROTECTED]/to
* /request
*
* It then looks up the stock price associated with the
* symbol each hour using the ws.investbox.com web service
* and email's the person specified in the to field of the
* request if the price reaches more than the max or less
* than the min. If not, the script sleeps for an hour and
* then tries again.
**/
function main(input, sender) {

   // parse out the source xml
   var request = sourceToXml(input.getInMessage().getContent());

   // create some BpmScript Services
   var soapService = new SoapService(sender);
   var alarmService = new AlarmService(sender);
   var emailService = new EmailService(sender);

   // grab the minimum and maximum values from the request
   var min = parseFloat(request.min.text().toString());
   var max = parseFloat(request.max.text().toString());

   // check every hour
   while(alarmService.sendSync(PT1H)) {

 // create the SOAP content
 var message = tns:GetQuote xmlns:tns=http://ws.invesbot.com/;
   tns:symbol{request..symbol.text()}/tns:symbol
   /tns:GetQuote;

 // send out the soap request
 var exchange = soapService.sendSync(
   soapService.toURL(http://ws.invesbot.com/stockquotes.asmx;),
   http://ws.invesbot.com/GetQuote;,
   xmlToSource(message));

 // get the xml from the response
 var xml = sourceToXml(exchange.getOutMessage().getContent());

 // parse out the bid. the reason this is more complicated
 // than it needs to be is because the data comes back as e.g.
23.5smallx 100/small
 var bid =
parseFloat(/^(\d+\.\d+)/.exec(xml..Bid.text().toString())[0]);

 // send out an email if the bid price is higher than the max
 // or lower than the minimum set and end the script
 if(bid  min || bid  max) {
   emailService.send({to:request.to.text().toString(),
 from:request.to.text().toString(),
 subject:Bid has reached  + (bid  min ? minimum : maximum)
+  value of  + bid,
 text:xml.toXMLString()});
   break;
 }
 }

 sender.reply(ST.toStreamSource(done/));

}


The spring config for the example looks as follows (without the smtp
properties -- i was testing using gmail):

?xml version=1.0 encoding=UTF-8?
beans xmlns:sm=http://servicemix.apache.org/config/1.0;
 xmlns=http://xbean.org/schemas/spring/1.0;
 xmlns:bs=http://bpmscript.org/jbi; xmlns:test=urn:test

 bean id=mailSender
   class=org.springframework.mail.javamail.JavaMailSenderImpl
   property name=host value=${smtp.host} /
   property name=port value=${smtp.port} /
   property name=protocol value=smtps /
   property name=username value=${smtp.username} /
   property name=password value=${smtp.password} /
   property name=javaMailProperties
 props
   prop key=mail.smtps.authtrue/prop
   prop key=mail.smtp.starttls.enabletrue/prop
   prop key=mail.smtp.debugtrue/prop
 /props
   /property
 /bean

 sm:container id=jbi embedded=true flowName=seda
   createMBeanServer=false

   sm:activationSpecs

 sm:activationSpec
   sm:component
 bean
   class=
org.bpmscript.jbi.component.InMemoryBpmScriptSpringComponent
   property name=endpoints
 list
   bean
 class=org.bpmscript.jbi.component.ProcessEndpoint
 property name=endpoint value=email /
 property name=sourceResource
   value=classpath:email/main.js /
   /bean
 /list
   /property
 /bean
   /sm:component
 /sm:activationSpec

 sm:activationSpec componentName=dynamicsoap
   service=bs:dynamicsoap
   sm:component
 bean class=org.bpmscript.jbi.DynamicSaajBinding/bean
   /sm:component
 /sm:activationSpec

 sm:activationSpec componentName=emailSender
   service=bs:emailSender
   sm:component
 bean
   class=org.apache.servicemix.components.email.SimpleMailSender
   property name=sender ref=mailSender/
 /bean
   /sm:component
 /sm:activationSpec

   /sm:activationSpecs
 /sm:container

/beans


Re: bpmscript example

2006-11-27 Thread Jamie McCrindle

thanks.

it's currently packaged up as a test case in bpmscript-core. might be tricky
to run it on it's own at the moment (easiest way would be to grab the source
from cvs and run the org.bpmscript.jbi.component.CallEmailTest.

there are examples of bpmscript running from an SU but they'll only be able
to use the lightweight components if configured in servicemix.xml. hmmm...
should probably look to make this example more independent (as an SU and
associated servicemix.xml, like the servicemix examples).

The dynamic saaj binding is just the servicemix SaajBinding which allows you
to specify the soap endpoint in the message rather than only at config time.

Additional stuff about the example:

* It doesn't do any initial validation, there's an argument that it would be
better to do it earlier just because the more stateless stuff you can do
outside of bpmscript, the faster it'll be
* It doesn't currently do any error handling (to keep the example relatively
small)
* It could do all sorts of other cool things like: set up a task to buy or
sell and then call some stock buying web service
* It's using the in memory version of the bpmscript component which makes it
quicker to test

cheers,
j.

On 11/27/06, Guillaume Nodet [EMAIL PROTECTED] wrote:


It sounds really nice :)
I will try to launch this example tonight ...
I need to take a look at the DynamicSaajBinding to see what it does.

On 11/27/06, Jamie McCrindle [EMAIL PROTECTED] wrote:
 hi all,

 i've put together an example of a long running business process in
bpmscript
 that showcases some of the things you can do with bpmscript (on top of
 servicemix, of course). The script looks like this:

 /**
  * Demonstration of BpmScript using services including:
  *
  * - Lightweight Email Component
  * - Lightweight SOAP Component (modified)
  * - BpmScript Alarm Service
  *
  * Example takes in a request which looks something like:
  * request
  *  symbolGOOG/symbol
  *  min12.9/min
  *  max53.9/max
  *  to[EMAIL PROTECTED]/to
  * /request
  *
  * It then looks up the stock price associated with the
  * symbol each hour using the ws.investbox.com web service
  * and email's the person specified in the to field of the
  * request if the price reaches more than the max or less
  * than the min. If not, the script sleeps for an hour and
  * then tries again.
 **/
 function main(input, sender) {

 // parse out the source xml
 var request = sourceToXml(input.getInMessage().getContent());

 // create some BpmScript Services
 var soapService = new SoapService(sender);
 var alarmService = new AlarmService(sender);
 var emailService = new EmailService(sender);

 // grab the minimum and maximum values from the request
 var min = parseFloat(request.min.text().toString());
 var max = parseFloat(request.max.text().toString());

 // check every hour
 while(alarmService.sendSync(PT1H)) {

   // create the SOAP content
   var message = tns:GetQuote xmlns:tns=http://ws.invesbot.com/;
 tns:symbol{request..symbol.text()}/tns:symbol
 /tns:GetQuote;

   // send out the soap request
   var exchange = soapService.sendSync(
 soapService.toURL(http://ws.invesbot.com/stockquotes.asmx;),
 http://ws.invesbot.com/GetQuote;,
 xmlToSource(message));

   // get the xml from the response
   var xml = sourceToXml(exchange.getOutMessage().getContent());

   // parse out the bid. the reason this is more complicated
   // than it needs to be is because the data comes back as e.g.
 23.5smallx 100/small
   var bid =
 parseFloat(/^(\d+\.\d+)/.exec(xml..Bid.text().toString())[0]);

   // send out an email if the bid price is higher than the max
   // or lower than the minimum set and end the script
   if(bid  min || bid  max) {
 emailService.send({to:request.to.text().toString(),
   from:request.to.text().toString(),
   subject:Bid has reached  + (bid  min ? minimum :
maximum)
 +  value of  + bid,
   text:xml.toXMLString()});
 break;
   }
   }

   sender.reply(ST.toStreamSource(done/));

 }


 The spring config for the example looks as follows (without the smtp
 properties -- i was testing using gmail):

 ?xml version=1.0 encoding=UTF-8?
 beans xmlns:sm=http://servicemix.apache.org/config/1.0;
   xmlns=http://xbean.org/schemas/spring/1.0;
   xmlns:bs=http://bpmscript.org/jbi; xmlns:test=urn:test

   bean id=mailSender
 class=org.springframework.mail.javamail.JavaMailSenderImpl
 property name=host value=${smtp.host} /
 property name=port value=${smtp.port} /
 property name=protocol value=smtps /
 property name=username value=${smtp.username} /
 property name=password value=${smtp.password} /
 property name=javaMailProperties
   props
 prop key=mail.smtps.authtrue/prop
 prop key=mail.smtp.starttls.enabletrue/prop
 prop key=mail.smtp.debugtrue/prop
   /props

servicemix-common and deployers

2006-11-10 Thread Jamie McCrindle

hi all,

i've been using servicemix-common which makes the process of getting a
fully fledged component done much easier. i do have a query /
suggestion regarding the way deployers are handled.

currently, if a baseserviceunitmanager is marked as having persistent
service units the deploy method will be called on each Deployer the
first time the service unit is deployed and then not again. Also, it
is assumed that the endpoint will be registered on deploy.

the situation i have in terms of lifecycle is closer to the spec, in
terms of: i'd like to have deploy called only once and then init
called each time the service unit is initialised. i'd also like to
register the endpoints/serviceunit in the init method rather than the
deploy.

the reasoning is as follows:

- the data in the service unit is persistent
- the first time it's deployed i'd like to load the data in a database
(or update it)
- each time it's initialised, i'd like to register the
serviceunit/endpoints but _not_ reload the data into the database.

so, where i am now is that i'd like to carry on using
baseserviceunitmanager without mangling it too much in a subclass. so
the query is, am i on the right track? the suggestion is, is there a
way to extend servicemix-common to support the lifecycle i've
described above?

cheers,
j.


Re: Build SM 3.0.1 broken

2006-11-08 Thread Jamie McCrindle

anyone seen any movement on this? just broke me too.

On 11/6/06, Guillaume Nodet [EMAIL PROTECTED] wrote:

This is very unfortunate.
The poms have been put to public repo today it seems
(see the dates at http://repo.mergere.com/maven2/geronimo/geronimo-kernel/1.1/)
so they were not here at the time the 3.0.1 has been built :(
Moreover, as you pointed, there are missing jars :(

For repository / geronimo guys: would it be possible to at least fix
the poms and
remove the missing bits, or add those ?  And is there any reason why these poms
have been recently put in public repos 5 months after the release ?

On 11/6/06, macdoor [EMAIL PROTECTED] wrote:

 I check out SM 3.0.1 source code from
 http://svn.apache.org/repos/asf/incubator/servicemix/tags/servicemix-3.0.1/,
 and run

 mvn -Dmaven.test.skip=true -Dprofile=step1 install

 I got the following message:

 [INFO] [compiler:compile]
 [INFO] Nothing to compile - all classes are up to date
 [INFO] [resources:testResources]
 [INFO] Using default encoding to copy filtered resources.
 Downloading:
 
http://www.ibiblio.org/maven2/org/apache/geronimo/specs/geronimo-qname_1.1_spec/1.0.1/geronimo-qname_1.1_spec-1.0.1.test
 [WARNING] Unable to get resource from repository central
 (http://www.ibiblio.org/maven2)
 Downloading:
 
http://servicemix.org/m2-repo/org/apache/geronimo/specs/geronimo-qname_1.1_spec/1.0.1/geronimo-qname_1.1_spec-1.0.1.test
 [WARNING] Unable to get resource from repository servicemix-m2-repo
 http://servicemix.org/m2-repo)
 Downloading:
 
http://people.apache.org/~chirino/incubator-activemq-4.0.2-RC5/maven2/org/apache/geronimo/specs/geronimo-qname_1.1_spec/1.0.1/geronimo-qname_1.1_spec-1.0.1.test
 [WARNING] Unable to get resource from repository activemq-tmp-repo
 (http://people.apache.org/~chirino/incubator-activemq-4.0.2-RC5/maven2)
 Downloading:
 
http://people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/geronimo/specs/geronimo-qname_1.1_spec/1.0.1/geronimo-qname_1.1_spec-1.0.1.test
 [WARNING] Unable to get resource from repository apache-releases
 (http://people.apache.org/repo/m2-ibiblio-rsync-repository)
 [INFO]
 
 [ERROR] BUILD ERROR
 [INFO]
 
 [INFO] Failed to resolve artifact.

 Missing:
 --
 1) org.apache.geronimo.specs:geronimo-qname_1.1_spec:test:1.0.1

   Try downloading the file manually from the project website.

   Then, install it using the command:
   mvn install:install-file -DgroupId=org.apache.geronimo.specs
 -DartifactId=
 geronimo-qname_1.1_spec \
   -Dversion=1.0.1 -Dpackaging=test -Dfile=/path/to/file

   Path to dependency:
 1) org.apache.servicemix:servicemix-services:jar:3.0.1-incubating
 2) geronimo:geronimo-connector:jar:1.1
 3) geronimo:geronimo-kernel:jar:1.1
 4) org.apache.geronimo.specs:geronimo-qname_1.1_spec:test:1.0.1

 --
 1 required artifact is missing.

 for artifact:
   org.apache.servicemix:servicemix-services:jar:3.0.1-incubating

 from the specified remote repositories:
   central (http://www.ibiblio.org/maven2),
   servicemix-m2-repo (http://servicemix.org/m2-repo),
   apache.snapshots (http://svn.apache.org/maven-snapshot-repository),
   apache-snapshots (http://people.apache.org/repo/m2-snapshot-repository),
   apache-releases
 (http://people.apache.org/repo/m2-ibiblio-rsync-repository),
   activemq-tmp-repo
 (http://people.apache.org/~chirino/incubator-activemq-4.0.2-RC5/maven2)
 --
 View this message in context: 
http://www.nabble.com/Build-SM-3.0.1-broken-tf2582163s12049.html#a7197988
 Sent from the ServiceMix - Dev mailing list archive at Nabble.com.




--
Cheers,
Guillaume Nodet



[jira] Commented: (SM-670) Including JMSFlow in default servicemix.conf

2006-10-11 Thread Jamie McCrindle (JIRA)
[ 
https://issues.apache.org/activemq/browse/SM-670?page=comments#action_37157 ] 

Jamie McCrindle commented on SM-670:


Could you add this to 3.0.1 branch?

thanks,
j.

 Including JMSFlow in default servicemix.conf
 

 Key: SM-670
 URL: https://issues.apache.org/activemq/browse/SM-670
 Project: ServiceMix
  Issue Type: Improvement
  Components: servicemix-assembly
Affects Versions: 3.0
 Environment: All
Reporter: Jamie McCrindle
 Assigned To: Guillaume Nodet
 Fix For: 3.1


 It would be useful to have JMSFlow in addition to the SedaFlow and JCAFlow 
 servicemix flows as part of the default install 
 (SERVICEMIX_HOME/conf/servicemix.xml). That way third party components or 
 applications that need to use synchronous remote exchanges can work out of 
 the box.
   sm:jmsFlow jmsURL=tcp://localhost:61616 /

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Updated: (SM-670) Including JMSFlow in default servicemix.conf

2006-10-11 Thread Jamie McCrindle (JIRA)
 [ https://issues.apache.org/activemq/browse/SM-670?page=all ]

Jamie McCrindle updated SM-670:
---

Attachment: servicemix.xml.jmsflow.patch

patch for 3.0.1

 Including JMSFlow in default servicemix.conf
 

 Key: SM-670
 URL: https://issues.apache.org/activemq/browse/SM-670
 Project: ServiceMix
  Issue Type: Improvement
  Components: servicemix-assembly
Affects Versions: 3.0
 Environment: All
Reporter: Jamie McCrindle
 Assigned To: Guillaume Nodet
 Fix For: 3.1

 Attachments: servicemix.xml.jmsflow.patch


 It would be useful to have JMSFlow in addition to the SedaFlow and JCAFlow 
 servicemix flows as part of the default install 
 (SERVICEMIX_HOME/conf/servicemix.xml). That way third party components or 
 applications that need to use synchronous remote exchanges can work out of 
 the box.
   sm:jmsFlow jmsURL=tcp://localhost:61616 /

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Created: (SM-670) Including JMSFlow in default servicemix.conf

2006-10-04 Thread Jamie McCrindle (JIRA)
Including JMSFlow in default servicemix.conf


 Key: SM-670
 URL: https://issues.apache.org/activemq/browse/SM-670
 Project: ServiceMix
  Issue Type: Improvement
  Components: servicemix-assembly
Affects Versions: 3.0
 Environment: All
Reporter: Jamie McCrindle


It would be useful to have JMSFlow in addition to the SedaFlow and JCAFlow 
servicemix flows as part of the default install 
(SERVICEMIX_HOME/conf/servicemix.xml). That way third party components or 
applications that need to use synchronous remote exchanges can work out of the 
box.

  sm:jmsFlow jmsURL=tcp://localhost:61616 /


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Created: (SM-674) jbi:installComponent (and others) fails authentication against default SM container

2006-10-04 Thread Jamie McCrindle (JIRA)
jbi:installComponent (and others) fails authentication against default SM 
container
---

 Key: SM-674
 URL: https://issues.apache.org/activemq/browse/SM-674
 Project: ServiceMix
  Issue Type: Bug
  Components: tooling
Affects Versions: 3.0
 Environment: Java 1.5, Windows XP SP2
Reporter: Jamie McCrindle
 Fix For: 3.1


When running the jbi:installComponent maven task to install a component into a 
running SM 3.0 container, it fails with an Authentication failed  User not 
found message. Debug from maven as follows:

[DEBUG] Configuring mojo 'org.apache.servicemix.tooling:jbi-maven-plugin:3.0-inc
ubating:installComponent' --
[DEBUG] -- end configuration --
[INFO] [jbi:installComponent]

installComponent:
 [echo] Installing C:\dev\component-mvn\component-task-jbi\target/component-
task-jbi-1.0-beta2-SNAPSHOT-installer.zip to service:jmx:rmi:///jndi/rmi://local
host:1099/jmxrmi
[installComponent] Error accessing ServiceMix administration: Authentication fai
led
[INFO] 
[ERROR] BUILD ERROR
[INFO] 
[INFO] Failed to execute: Executing Ant script: /jbi.build.xml [installComponent
]: Failed to execute.

User does not exist
[INFO] 
[DEBUG] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute: Execu
ting Ant script: /jbi.build.xml [installComponent]: Failed to execute.
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa
ultLifecycleExecutor.java:559)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandalone
Goal(DefaultLifecycleExecutor.java:488)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau
ltLifecycleExecutor.java:458)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan
dleFailures(DefaultLifecycleExecutor.java:306)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen
ts(DefaultLifecycleExecutor.java:273)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLi
fecycleExecutor.java:140)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)

at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to execute: Ex
ecuting Ant script: /jbi.build.xml [installComponent]: Failed to execute.
at org.apache.maven.script.ant.AntMojoWrapper.execute(AntMojoWrapper.jav
a:37)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugi
nManager.java:412)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa
ultLifecycleExecutor.java:534)
... 16 more
Caused by: org.codehaus.plexus.component.factory.ant.AntComponentExecutionExcept
ion: Executing Ant script: /jbi.build.xml [installComponent]: Failed to execute.

at org.codehaus.plexus.component.factory.ant.AntScriptInvoker.invoke(Ant
ScriptInvoker.java:227)
at org.apache.maven.script.ant.AntMojoWrapper.execute(AntMojoWrapper.jav
a:33)
... 18 more
Caused by: C:\DOCUME~1\JamesM\LOCALS~1\Temp\plexus-ant-component30723.build.xml:
30: Error accessing ServiceMix administration
at org.apache.servicemix.jbi.management.task.JbiTask.execute(JbiTask.jav
a:272)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
at org.codehaus.plexus.component.factory.ant.AntScriptInvoker.invoke(Ant
ScriptInvoker.java:222)
... 19 more
Caused by: java.lang.SecurityException: Authentication failed
at org.apache.servicemix.jbi.jmx.JaasAuthenticator.authenticate(JaasAuth

[jira] Commented: (SM-674) jbi:installComponent (and others) fails authentication against default SM container

2006-10-04 Thread Jamie McCrindle (JIRA)
[ 
https://issues.apache.org/activemq/browse/SM-674?page=comments#action_37099 ] 

Jamie McCrindle commented on SM-674:


tried setting the username / password but they're configured as readonly in the 
jbi.mojo.xml (in fact, almost everything is configured as readonly). am i doing 
it wrong?

 jbi:installComponent (and others) fails authentication against default SM 
 container
 ---

 Key: SM-674
 URL: https://issues.apache.org/activemq/browse/SM-674
 Project: ServiceMix
  Issue Type: Bug
  Components: tooling
Affects Versions: 3.0
 Environment: Java 1.5, Windows XP SP2
Reporter: Jamie McCrindle
 Fix For: 3.0.1, 3.1


 When running the jbi:installComponent maven task to install a component into 
 a running SM 3.0 container, it fails with an Authentication failed  User not 
 found message. Debug from maven as follows:
 [DEBUG] Configuring mojo 
 'org.apache.servicemix.tooling:jbi-maven-plugin:3.0-inc
 ubating:installComponent' --
 [DEBUG] -- end configuration --
 [INFO] [jbi:installComponent]
 installComponent:
  [echo] Installing 
 C:\dev\component-mvn\component-task-jbi\target/component-
 task-jbi-1.0-beta2-SNAPSHOT-installer.zip to 
 service:jmx:rmi:///jndi/rmi://local
 host:1099/jmxrmi
 [installComponent] Error accessing ServiceMix administration: Authentication 
 fai
 led
 [INFO] 
 
 [ERROR] BUILD ERROR
 [INFO] 
 
 [INFO] Failed to execute: Executing Ant script: /jbi.build.xml 
 [installComponent
 ]: Failed to execute.
 User does not exist
 [INFO] 
 
 [DEBUG] Trace
 org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute: 
 Execu
 ting Ant script: /jbi.build.xml [installComponent]: Failed to execute.
 at 
 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa
 ultLifecycleExecutor.java:559)
 at 
 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandalone
 Goal(DefaultLifecycleExecutor.java:488)
 at 
 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau
 ltLifecycleExecutor.java:458)
 at 
 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan
 dleFailures(DefaultLifecycleExecutor.java:306)
 at 
 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen
 ts(DefaultLifecycleExecutor.java:273)
 at 
 org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLi
 fecycleExecutor.java:140)
 at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
 at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
 at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at 
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
 java:39)
 at 
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
 sorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
 at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
 at 
 org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
 at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
 Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to execute: 
 Ex
 ecuting Ant script: /jbi.build.xml [installComponent]: Failed to execute.
 at 
 org.apache.maven.script.ant.AntMojoWrapper.execute(AntMojoWrapper.jav
 a:37)
 at 
 org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugi
 nManager.java:412)
 at 
 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa
 ultLifecycleExecutor.java:534)
 ... 16 more
 Caused by: 
 org.codehaus.plexus.component.factory.ant.AntComponentExecutionExcept
 ion: Executing Ant script: /jbi.build.xml [installComponent]: Failed to 
 execute.
 at 
 org.codehaus.plexus.component.factory.ant.AntScriptInvoker.invoke(Ant
 ScriptInvoker.java:227)
 at 
 org.apache.maven.script.ant.AntMojoWrapper.execute(AntMojoWrapper.jav
 a:33)
 ... 18 more
 Caused by: 
 C:\DOCUME~1\JamesM\LOCALS~1\Temp\plexus-ant-component30723.build.xml:
 30: Error accessing ServiceMix administration
 at 
 org.apache.servicemix.jbi.management.task.JbiTask.execute(JbiTask.jav
 a:272)
 at 
 org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
 at org.apache.tools.ant.Task.perform(Task.java:364)
 at org.apache.tools.ant.Target.execute(Target.java:341

[jira] Created: (SM-612) servicemix-service-engine could set the scope of servicemix-core to provided

2006-09-29 Thread Jamie McCrindle (JIRA)
servicemix-service-engine could set the scope of servicemix-core to provided


 Key: SM-612
 URL: https://issues.apache.org/activemq/browse/SM-612
 Project: ServiceMix
  Issue Type: Improvement
Affects Versions: 3.0
Reporter: Jamie McCrindle
 Fix For: 3.1


servicemix-service-engine could set the scope of servicemix-core to provided so 
that core and all of it's dependencies (which should be in servicemix) aren't 
put into the component distribution as in:

dependency
  groupIdorg.apache.servicemix/groupId
  artifactIdservicemix-core/artifactId
  version${servicemix-version}/version
  scopeprovided/scope
/dependency


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Created: (SM-607) Files dropped into the install directory sometimes result in a file in use by another process error

2006-09-28 Thread Jamie McCrindle (JIRA)
Files dropped into the install directory sometimes result in a file in use by 
another process error
-

 Key: SM-607
 URL: https://issues.apache.org/activemq/browse/SM-607
 Project: ServiceMix
  Issue Type: Bug
  Components: servicemix-core
Affects Versions: 3.0
 Environment: Windows XP SP2, Java 5
Reporter: Jamie McCrindle


Files dropped into the install directory sometimes result in a file in use by 
another process error. I assume that this is a race condition where the 
operating system hasn't completed copying the files when servicemix picks them 
up and so the exception is thrown. It's intermittent and a workaround is to 
drop the monitorInterval down from 1s to 10s.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (AMQ-704) ActiveIO compromises java.lang.System.properties

2006-09-12 Thread Jamie McCrindle (JIRA)
[ 
https://issues.apache.org/activemq/browse/AMQ-704?page=comments#action_36942 ] 

Jamie McCrindle commented on AMQ-704:
-

hi, is this really fixed or is the workaround considered the fix? if it's just 
the workaround, it's not great, since it fries hibernate 3.1 without the 
workaround. the workaround is pretty difficult to find and the setting of the 
DisableLocking system property is not a particularly friendly solution 
(especially if you don't want locking disabled).

 ActiveIO compromises java.lang.System.properties
 

 Key: AMQ-704
 URL: https://issues.apache.org/activemq/browse/AMQ-704
 Project: ActiveMQ
  Issue Type: Bug
 Environment: ActiveMQ 4.0RC2 (confirmed still around in the current 
 ActiveIO SVN),  Java 1.5 on Windows (but should be a problem anywhere).
Reporter: matt hoffman
 Assigned To: Hiram Chirino
 Fix For: 4.0


 When using the ActiveIO journal, it's putting a java.util.HashSet into the 
 System.properties (using a properties.put() call that circumvents the  normal 
 System.putProperty() method, that only allows strings).   This isn't allowed, 
 according to java.util.Properties' contract, and therefore breaks other 
 packages that rely on System.properties adhering to its contract.  Most 
 notably, it chokes Hibernate; however, anything that iterates through the 
 System properties will fail after ActiveIO has compromised it with a 
 non-String value.
 Honestly, I don't know why Properties doesn't allow non-String values, but oh 
 well.  From the java.lang.Properties docs: 
 Because Properties inherits from Hashtable, the put and putAll methods can 
 be applied to a Properties object. Their use is strongly discouraged as they 
 allow the caller to insert entries whose keys or values are not Strings. The 
 setProperty method should be used instead. If the store or save method is 
 called on a compromised Properties object that contains a non-String key or 
 value, the call will fail.
 The call is being made in org.apache.activeio.journal.active.ControlFile; I 
 suppose a hack could be created that stringifies the HashSet before placing 
 it in the properties and recreates it before getting it out again; 
 atlernately, a simple singleton or static set could be used.  I'd be happy to 
 implement either one, if you'd like. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Created: (SM-395) InOut doesn't failover to another node if source node is unavailable

2006-04-11 Thread Jamie McCrindle (JIRA)
InOut doesn't failover to another node if source node is unavailable


 Key: SM-395
 URL: https://issues.apache.org/activemq/browse/SM-395
 Project: ServiceMix
Type: Improvement

  Components: servicemix-core  
Versions: incubation
Reporter: Jamie McCrindle
 Fix For: incubation


Currently, an InOut exchange will fail if its source component is unavailable.

Ideally, if there a a cluster of the same component on different nodes and the 
source component is unavailable, servicemix should failover and pass the InOut 
exchange to one of the live components.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira