Re: Simple way to run Tuscany from source distribution?

2008-06-13 Thread Jean-Sebastien Delfino

Luciano Resende wrote:

Hey Scott

   Currently, our ant script and guides are based on having a
distribution available, and you will have to use maven if you want to
build/run from trunk source or a source distribution.


On Thu, Jun 12, 2008 at 8:44 AM, Scott Kurz [EMAIL PROTECTED] wrote:

What's a simple way to run simple apps like the samples from the source
distribution?

I noticed on the Getting Started:
http://incubator.apache.org/tuscany/getting-started-with-tuscany-using-the-command-line.html

it assumes you're running from the binary?

I'm looking for something either command-line or Ant-based and trying to
avoid Maven.

Thanks,
Scott



There are two other ways:

- write the Ant scripts to build Tuscany
- use them to build the source distro
- contribute them to Tuscany

or

- write the Ivy scripts to build Tuscany
- use them to build the source distro
- contribute them to Tuscany

Who knows, Tuscany may even adopt them :)
--
Jean-Sebastien


Re: Can't generate a Java interface from a WSDL portType

2008-06-09 Thread Jean-Sebastien Delfino

Simon Nash wrote:

Jean-Sebastien Delfino wrote:

Scott Kurz wrote:
Sebastien, I'm surprised the package names would be different.
What is
the namespace you're using that isn't mapping to the same package in 
each

tool?
Just curious...



My app is an order processing app with the following:

WSDL service namespace:
http://sample/Order/Binding

WSDL Order portType namespace:
http://sample/Order

The CXF tool generates interface sample.order.Order
The JAXWS RI tool generates interface sample.order.binding.Order

I gave the same WSDL file (containing the WSDL service) to both tools.

One could argue that both are correct vs the JAX-WS spec as they 
generate a correct package name from the namespace of 'the' WSDL 
definition, but the funny thing is that they do not pick the same WSDL 
definition... JAXWS-RI picks the input definition given to the tool 
and CXF the definition that actually contains the portType... and the 
JAXWS spec doesn't seem to state which one should be picked (at least 
I couldn't find it).


IMHO the CXF behavior is better, but I've not read all 150 pages of 
the JAX-WS spec so I may be missing something :)

 
 From section 2.2 of the JAX-WS spec:

 A wsdl:portType element is mapped to a Java interface in the package
 mapped from the wsdl:definitions element (see section 2.1 for a
 description of wsdl:definitions mapping).

Section 2.1 says:

 A wsdl:definitions element and its associated targetNamespace
 attribute is mapped to a Java package. JAXB[10] (see appendix D)
 defines a standard mapping from a namespace URI to a Java package
 name. By default, this algorithm is used to map the value of a
 wsdl:definitions element’s targetNamespace attribute to a Java
 package name.

 } Conformance (Definitions mapping): In the absence of customizations,
 the Java package name is mapped from the value of a wsdl:definitions
 element’s targetNamespace attribute using the algorithm defined by
 JAXB[10].


Yeah I read that too. Again, both implementations comply with that text 
but pick different definitions. That's all.



So IMO the Java package name that's used to map the portType should
be derived from the targetNamespace of the wsdl:definitions element.
What was this targetNamespace?


See above: http://sample/Order




  Simon



--
Jean-Sebastien


Re: Can't generate a Java interface from a WSDL portType

2008-06-04 Thread Jean-Sebastien Delfino

Raymond Feng wrote:

Hi,

I got the CXF code-gen plugin 2.1 working after debugging the plugin 
source code :-(.


Here is the pom.xml snippt I figured out. Please note I had to override 
wsdlRoot/testWsdlRoot to be a non-existing file to avoid NPE (I assume 
it's CXF bug if the wsdl files are in src/test/resources/wsdl).




...

That worked for me too. The generated output is slightly different from 
the JAXWS RI wsimport (different package name for the generated 
interface for example) but it looks OK.


Thanks!
--
Jean-Sebastien


Re: STP SCA Component - STP SCA Tools sub project

2008-04-09 Thread Jean-Sebastien Delfino

Stéphane Drapeau wrote:

Hi,

I created an entry [0] in the Eclipse bugzilla with the proposal.
Your comments are welcome.

Best regards

Stéphane Drapeau
Obeo

[0]: https://bugs.eclipse.org/bugs/show_bug.cgi?id=225956



The proposal looks pretty good to me. I have a few comments/questions:

- Are you going to have tools to create SCA contributions, 
imports/exports, contribution dependencies etc?


- You mention validation rules in the EMF model. Will the tool create 
problems, warnings, tasks etc in the Eclipse problem view?


- Do you have any plans to provide hooks to Run/Debug SCA components 
from the tool?


- Are you going to cover any of the SCA domain and deployment aspects, 
like deploying SCA contributions and composites to an SCA domain shared 
by a team for example?



+1 from me to have Tuscany listed as an interested party.

--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: SCA 2.0, was Re: Next SCA release

2008-04-09 Thread Jean-Sebastien Delfino

haleh mahbod wrote:

1 - [] Put V2 doc changes in V1 pages and mark them as such
2 - [] Create SCA Java 1.x/ SCA Java 2.x documentation pages on our current

site wiki

3 - [] Create separate SCA Java 1.x/ SCA Java 2.x wiki spaces


Option 2 seems reasonable.  Option 3 can be considered in the future if
there is a need.
It would be good to get user's perspective on all this.



+0.5 for options [1], [2] and maybe [3] later :)

I'm just saying 0.5 as looking at our current docs as I'm not sure about 
 how people are planning to change them in 2.0. It's a little difficult 
to discuss a process to manage changes without knowing the extent and 
nature of the changes :)


--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: ask help for implemetation.widget

2008-03-31 Thread Jean-Sebastien Delfino

Fengxiang wrote:

Thanks!.Luciano Resende
Yesterday evening, I got an successful configuration of ict.composite.
It seems almost work well .All pages I want was sucessfully integerated into
index, and show right output, but there is still a little problem,that is
the there is always a script error which tell me :
Exception throw and not caught .
This happend on loading callwidget.html in a frame in index.html.
I guset there will be some un property involk of :
function a(){
var CallService = new Reference(callService);
CallService.call(,,CallService_getResponse);

}
-
ict.composite-
?xml version=1.0 encoding=UTF-8?
composite xmlns=http://www.osoa.org/xmlns/sca/1.0;
xmlns:t=http://tuscany.apache.org/xmlns/sca/1.0; name=ICTComposite
targetNamespace=http://ICTComposite;
component name=ContactServiceComponent
implementation.java class=
com.asb.services.contact.ContactServiceImpl /
service name=ContactService
interface.java interface=
com.asb.services.contact.ContactService/interface.java
t:binding.jsonrpc/t:binding.jsonrpc
/service
/component
component name=CallServiceComponent
implementation.java class=com.asb.services.call.CallServiceImpl
/
service name=CallService
interface.java interface=com.asb.services.call.CallService
/interface.java
t:binding.jsonrpc/t:binding.jsonrpc
/service
/component
component name=callwidget
t:implementation.widget location=webtop/callwidget.html/t:
implementation.widget
service name=Widget
t:binding.http /
/service
reference name=callService target=CallServiceComponent
t:binding.jsonrpc/t:binding.jsonrpc
/reference
/component
component name=contactwidget
t:implementation.widget location=webtop/contactwidget.html/t:
implementation.widget
service name=Widget
t:binding.http /
/service
reference name=contactService target=ContactServiceComponent
t:binding.jsonrpc/t:binding.jsonrpc
/reference
/component
component name=icthome
t:implementation.widget location=webtop/index.html/t:
implementation.widget
service name=Widget
t:binding.http /
/service

/component
/composite
-
callwidget.html

html
head
titlecall/TITLE

script type=text/javascript src=/SCADomain/scaDomain.js/script
script type=text/javascript src=callwidget.js/script
script language=JavaScript

//@Reference
var ContactService = new Reference(callService );
function CallService_getResponse(items) {

document.getElementById('callComponent').innerHTML=items;
}

function a(){
var CallService = new Reference(callService);
CallService.call(,,CallService_getResponse);

}
/script

/head

body onload=a()
h1callwidget/h1


   form name=callComponentForm
div id=callComponent/div
br

   /form

 br



/body
/html
CallServiceImpl---
/**
 *
 */
package com.asb.services.call;

import org.osoa.sca.annotations.Service;

/**
 * @author meflyup
 *
 */
@Service(CallService.class)
public class CallServiceImpl implements CallService {

public String call(String caller,String callee){

return call successful;

}

}
BTW,I can receive the msg of  call successful  in my index.html page.

Another question :
According the ict.composite file , the index file should be visit with
http://localhost:8080/icthome/index.html.
and callwidget.html shoulde be visit with
http://localhost:8080/callwidget/callwidget.html.
and contactwidget.html should be visit with with
http://localhost:8080/contactwidget/contactwidget.html..
Any other link will cause HTTP ERROR: 404.
Is that right, but now I can visit the index.html with
http://fengxiang:8080/contactwidget/index.html and
http://fengxiang:8080/callwidget/index.html.
but i can't visit the http://fengxiang:8080/icthome/contactwidget.html,and
http://fengxiang:8080/icthome/callwidget.html.
How could these happen, It seems disorder. isn't it?

BR.
Thanks.



Hi Fengxiang,

Could you create a JIRA issue and attach your files to it in a Zip? I 
can take a look but it'll be easier to debug that way, as this may be a 
problem with the layout of the files in your directory structure for 
example.


Thanks
--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: web services and 2 way ssl

2008-03-26 Thread Jean-Sebastien Delfino

[EMAIL PROTECTED] wrote:
...

What is the best way to handle the 2 way ssl?

...
I don't know 2 way SSL enough to answer this one, hoping that somebody 
else on the list can address it...


...

Also in regards to the Atom feed:
Can I somehow create a feed that appends a dynamic query parameter to the
url?


That one is easier, see that earlier post: 
http://marc.info/?l=tuscany-userm=120622009406177


Hope this helps, let us know if you have more questions on the dynamic 
query parameter support.

--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Passing URL parameters to a feed component?

2008-03-22 Thread Jean-Sebastien Delfino

Skip Schuler wrote:

So the thing is that I need to implement the Servlet interface, is that
right?



No you don't need to implement the Servlet interface. The workspace 
admin app does more than producing feeds and that's why it implements 
the Servlet interface in addition to the Collection interface used to 
produce feeds.


The following options are available for what you want to do:

A. Implement o.a.t.sca.implementation.data.api.Collection

This is a high level interface allowing you to produce feeds out of 
collections of data items, without having to deal with the details of 
ATOM or RSS in your code.


It has a query method, which will be invoked when the service is invoked 
with query parameters.


The Tuscany tutorial's ShoppingCart [1] shows an example, I just added 
code to it showing how to implement that query() method.


B. Implement o.a.t.sca.binding.atom.collection.Collection

That interface allows you to work with the ATOM feed directly if you 
need to, represented as an o.a.abdera.model.Feed model object. It also 
has a query method.


The feed-aggregator sample [2] shows how to implement that query method, 
and http://localhost:8083/atomAggregator?title=whatever now returns a 
feed of articles with titles containing 'whatever'.


C. Implement o.a.t.sca.binding.rss.collection.Collection to produce RSS 
feeds and in your code work with the RSS feed directly, represented as 
com.sun.syndication.feed.synd.SyndFeed model objects.


This is similar to (B) but for RSS feeds, with a query method as well.

Options (B) and (C) are available starting with Tuscany 1.2 release, 
which we are in the middle of releasing. I'd suggest to try 1.2 release 
candidate 1 as soon as it's available (probably today watch for any 
announcement from Luciano).


You'll see notable changes in 1.2 as it now uses Apache Abdera instead 
of ROME to provide better support for ATOM.


[1] 
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/tutorial/assets/services/ShoppingCartImpl.java
[2] 
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/feed-aggregator/src/main/java/feed/AggregatorImpl.java

--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: WS outside of control

2008-03-22 Thread Jean-Sebastien Delfino

Raymond Feng wrote:

Hi,

Welcome to Tuscany!

Let me first make sure that I understand your scenario correctly.

1) You have an external web service MathService developed with Axis2 
and the endpoint address is 
http://localhost:8080/zong/services/MathService.
2) In the Calculator composite, you want to wire to the MathService to 
provide the add function

3) There is an interface AddService with add operation

Since the MathService has different operations than AddService, the 
Calculator component needs to wire to the MathService using an interface 
compatible with MathService, for example, you can define an interface 
for the MathService as:


@Remotable
public interface RemoteMatchService {
   public double addiere(double a,double b);
   public int aufrunden(double a);
}

And change the Calculator impl to be:

private RemoteMatchService addService;

@Reference
public void setAddService(RemoteMathService addService) {
...
}

public double add(double n1, double n2) {
 return addService.addiere(n1, n2);
}



Hmmm, that will work but requires changes to CalculatorServiceImpl.java.

The neat thing with SCA is that you can also support your scenario 
without a code change (but a little more assembly), as follows:


1. Create a 'mediation' component that mediates between the AddService 
and the MathService interfaces.


class AddMediationImpl implements AddService {

  private MathService mathService;

  @Reference
  public setMathService(MathService service) {
this.mathService = service;
  }

  public double add(double a, double b) {
return mathService.addiere(a, b);
  }
}

2. Put that mediation component on the path to your remote math service 
in your .composite.


composite ...

 component name=CalculatorServiceComponent
  implementation.java class=calculator.CalculatorServiceImpl/
  reference name=addService target=MediationServiceComponent/
   ...
 /component

 component name=MediationServiceComponent
  implementation.java class=calculator.AddMediationImpl/
  reference name=mathService
   binding.ws uri=http://localhost:8080/zong/services/MathService; / 


  /reference
 /component
 ...
/composite

Mediation components like that allow you to compose an application out 
of services that were not initially designed to fit together, by 
adapting their interfaces and/or behavior.


They are usually simple to write by hand, or if you have many interface 
mappings like that one, you can just write a simple tool that generates 
them for you.


Hope this helps.
--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Adding support for Properties in Implementation widget, was Re: SCA in Web 2.0 applications...

2008-03-13 Thread Jean-Sebastien Delfino

Luciano Resende wrote:

For now String. this might change when I get isMany working.


OK. I think that string is fine, and 'isMany' properties can map to an 
array of strings.


--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: What should be in Tuscany SCA Java release 1.2?

2008-03-04 Thread Jean-Sebastien Delfino

Luciano Resende wrote:

Time flies and is already March. I'd like to restart discussion on
this thread and start building a list of things we want to do for SCA
1.2 and I'd also like to volunteer for Release Manager for SCA 1.2
release.

On Thu, Feb 14, 2008 at 8:52 AM, Simon Laws [EMAIL PROTECTED] wrote:

Hi

 It's probably about time we started talking about what's going to be in
 Tuscany SCA Java release 1.2. From the past timeline I would expect us to be
 trying for a release mid to late March which is not very far away.

 Some of the things I'd like to see are;

 More progress on our domain level composite and generally the processing
 that has to go there
 There have been a lot of policy changes going on and it would be good to get
 them in. Also linked to the item above we should look at how policy affects
 domain level processing.
 Don't know if it's achievable but some elements of the runtime story we have
 been talking about on the mail list for a while now

 Feel free to add topics on this thread. I've also opened up the
 Java-SCA-1.2category in JIRA so start associating JIRA with it, for
 example, if

 1 - you've already marked a JIRA as fixed and its sitting at Java-SCA-Next
 2 - you are working or are going to work on the JIRA for 1.2
 3 - you would like to see the JIRA fixed for 1.2

 Of course everyone is invited to contribute and submit patches for JIRA
 whether they be for bugs or new features. Inevitably not all wish list
 features will get done so you improve your chances of getting you favorite
 feature in by submitting a patch for it.

 Regards

 Simon



+1 from me for Luciano as RM for 1.2!

I'll do a pass through JIRAs as suggested by Simon earlier in this 
thread and will also try to post tomorrow about the items I'd like to 
see in 1.2.


--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: SCA C++ implementation - bindings?

2008-02-21 Thread Jean-Sebastien Delfino

ant elder wrote:

On Thu, Feb 21, 2008 at 8:25 AM, Prashanth Rao [EMAIL PROTECTED]
wrote:


What are the approaches needed to integrate C++ component with say Java
component.
Is webservice binding the only way i can wire them together?

Thanks
Prashanth




I think thats right, WS is the best way to do this today.



binding.sca should work as well as both the Java and C++ runtimes use 
Web Services (using Axis2/Java and Axis2C) for it.


--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Problem with javabean data binding (empty arraylist)

2008-02-15 Thread Jean-Sebastien Delfino

Pedro David Lopez wrote:

Hi, I'm a new Apache Tuscany user and I have a problem

Im using ws binding and return from the web services very simple
javabeans. This beans have some strings, integers and arraylists
atributtes.
In other case is a simple java ArrayList. When I try web services the
javabean received has only the strings and integer values but empty
arraylist.
(Always empty arraylist). My beans implements Serializable and i dont
have exceptions. (no errors from data transformers but empty
arraylist).

¿Some help? THANK YOU

Pedro Lopez,Push The Button, S.L.



Hi,

I don't think that ArrayList is supported.

List may be supported (but I'm not sure, maybe Raymond can jump in and 
shed some light here).


Arrays are supported, I'm using arrays in some of my sample apps and 
have not seen any issues with them.


Hope this helps.
--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: store example as a servlet?

2008-01-21 Thread Jean-Sebastien Delfino

Matthew Peters wrote:

Thanks for the encouragement, all. I'll let you know how I get on.

This probably off topic for this list, but the choice between 
implementation.web and implementation.servlet is an interesting one. 
The page Jean-Sebastien refers to says that implementation.web is the 
current thinking, but implementation.servlet has its virtues too. It 
rather depends on whether you want the detail of the individual servlets 
exposed for configuration - would you want per servlet aspects like the 
servlet init parameters exposed as SCA properties for example? If you did, 
you might like something like

implementation.servlet name=warfilename#servletname
   property name=currencyEURO/property
/implementation.servlet
In this case you could present currency to the servlet as a servlet init 
parameter.


This properly a topic for the place in OSOA where the SCA-JEE integration 
is discussed, of course, and I raised it as an issue there recently, 
though it has not been discussed yet. 


Matthew Peters



Makes a lot of sense to me.

Both implementation.web and implementation.servlet are interesting:

- implementation.web models the contracts around a webapp and helps 
assemble a webapp with others in a bigger SCA assembly.


- implementation.servlet can model the assembly of the webapp itself.

--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2 configuration

2008-01-16 Thread Jean-Sebastien Delfino

  wrote:


Hello ,

Does anybody know how to change the default configuration settings for 
binding.ws ?
To be specific , I am looking for the number of connections that Axis can open 
in the same time to a remote server.
The default behaviour seems to allow only 2 connections opened and this is a 
bottleneck in a high volume application.



Some information is available in the Axis2 documentation [1], confirming 
the limitation and giving an API to change the default of 2.


I'll investigate to see how to improve the current behavior:

- see if we can configure it externally

- or see if we need to change the scope of the HttpClient instances (I 
think we are using one instance of HttpClient per reference at the moment).


Would you mind creating a JIRA for this issue? it'll help track it.

Thanks.

[1] http://ws.apache.org/axis2/1_3/http-transport.html
--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Eclipse RCP apps and Tuscany

2008-01-11 Thread Jean-Sebastien Delfino

Rajini Sivaram wrote:
[snip]
 I dont know the code well enough to understand how

these contributions are used/loaded/resolved etc. But yes, it will be good
to stop manipulating URLs to locate contributions.



+1, if I understand correctly, the scenario discussed here is like this:

Bob, application developer, writes Java code to bootstrap Tuscany and 
load some SCA contributions into it, before starting his composites.


With the current API, Bob's code needs to do something like:
TuscanySomething.addContribution(location of the contribution)

Bob can't seriously hardcode the location of the contribution:

- C:\Bob's Dir\aContribution.jar is only going to work on Bob's machine.

- At development time the location is also different, something like 
C:\Bob's IDE workspace\aProject\bin.


- When Bob builds with Maven the location is probably different again 
C:\Bob's build Dir\target\classes.


Bob didn't want to have to write 3 different classes for these 3 cases, 
so he put his SCA contribution on his classpath and wrote (almost) 
portable code to locate it (by looking for a known resource on the 
classpath and getting the location of the contribution from the 
resource's URL).


This is a hack around an inconvenient Tuscany bootstrap API which 
requires the app developer to give the location of his contributions.


How about trying to attack the real problems IMO:

- Bob shouldn't have to specify a location in the first place, he should 
be able to identify his contributions by contribution logical URI.


- or even better, Bob should not have to write any code to bootstrap the 
runtime and list contributions in the first place.


- and Bob shouldn't have to put his SCA contributions on his VM's 
classpath either (see the Store tutorial for an example, where the store 
contribution references the assets contribution without a classpath 
dependency on it).


Thoughts?
--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: sample crud implementation

2008-01-02 Thread Jean-Sebastien Delfino

Luciano Resende wrote:

The one in the host-embedded is used for unit testing, and to make
sure extensions are working ok. The one in samples, is basically a
copy, and it's used as an example of how to build a new implementation
type. As you said in the first e-mail, the two are basically the same,
and I'd recommend you to stick with one of them (the sample version
that is more well documented)




Yes. Stick to the sample and ignore the test case, I'm going to change 
the test case to avoid confusion in the future.


--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: sample crud implementation

2008-01-02 Thread Jean-Sebastien Delfino

Jean-Sebastien Delfino wrote:

Luciano Resende wrote:

The one in the host-embedded is used for unit testing, and to make
sure extensions are working ok. The one in samples, is basically a
copy, and it's used as an example of how to build a new implementation
type. As you said in the first e-mail, the two are basically the same,
and I'd recommend you to stick with one of them (the sample version
that is more well documented)




Yes. Stick to the sample and ignore the test case, I'm going to change 
the test case to avoid confusion in the future.




Done. I have refactored the test case and also cleaned up the CRUD 
sample and added more relevant comments to it.


Hope this helps.
--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Service Discovery for SCA

2007-12-19 Thread Jean-Sebastien Delfino

Novak, Miroslav wrote:

Hi,
 Thanks for your reply. I'm glad that you like the idea of Service Discovery for 
SCA.

Actually, I think that the best (and probably simplest) interface for the 
discovery would be REST.

I'm nor SCA neither Tuscany expert so maybe that my view is too simplistic but 
I would like to use e.g. this URI space:


/domain/{an SCA domain}/composites/{a composite}/services
/references
   /composites/{a composite}/components/{a 
component}/services
 
/references
/query/services[binding,name,qname,...]



Each of the collections should allow searching by key attributes like name, 
binding type, ...

Repositories (and regular users) interested in SCA composites, components, 
services, ... could check regularly RSS feeds of appropriate collections.



That sounds very interesting. We could make the collection of composites 
in a domain as an Atom collection or RSS feed. It should be relatively 
easy to implement using the feed binding that we have or some REST 
binding derived from it or the HTTP binding that we have.


Once you've made the SCA metadata available on the Web, then it becomes 
really easy to reference it, feed it into a search engine, feed readers etc.




---

Recently, I've been thinking about turning the idea Service Discovery for SCA 
up-side-down - instead of discovering what is inside SCA, SCA runtime could discover what 
is outside SCA.

Imagine that Tuscany can read service definitions from a Repository or Registry 
(e.g. standard UDDI Registry). Then you can use any services (Web Services) 
registered in a Repository or Registry from your SCA application (component) 
without knowing anything about their deployment or implementation - that's 
*real SOA* :-).

When creating a new service in Tuscany, you could say: I want to use this service 
-uddi:banking:accounts:AccountService(service is determined by its UDDI key - UUID) OR 
http://banking.com/accounts#wsdl.service(AccountService).

reference name=accountService
tuscany:binding.uddi 
uddiKey=uddi:banking:accounts:AccountService/
/reference

OR

reference name=accountService
binding.ws wsdlElement= 
http://banking.com/accounts#wsdl.service(AccountService)/
/reference

So, this way:
* I only need to know interface of a service (its QName from its WSDL) in order 
to use the service (I don't care where the service is deployed and where the 
WSDL is located - this information in maintained by a Repository or Registry)
* Tuscany can use whatever mechanism to resolve my reference using e.g. a UDDI 
Registry.

In the ideal world:

!-- Tuscany could look through all service by QName-capable repositories for a 
service that I want to use --
reference name=accountService
binding.ws wsdlElement= 
http://banking.com/accounts#wsdl.service(AccountService)/
/reference


Regards,

Mirek



Or - picking on your search idea - you could just do a search for the 
service descriptions published as REST resources in the domain that 
provide the interface you want :)


--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: What is Tuscany?

2007-12-13 Thread Jean-Sebastien Delfino

Joshua Jackson wrote:

On 12/8/07, Raymond Feng [EMAIL PROTECTED] wrote:

Hi, Joshua.

Thank you for your interests in Tuscany. Let me try to dump some information
to you :-).

Tuscany provides open-source software for distribution at no charge to the
public, that simplifies the development, deployment and management of
distributed applications built as compositions of service components, where
the components may be written using any of a wide range of programming
languages and where the components can be connected using any of a wide
range of communication technologies. This software will implement relevant
open standards including, but not limited to, the SCA and SDO standards
defined by the OASIS OpenCSA member section.

There are a few articles/slides:

http://webservices.sys-con.com/read/325183.htm
http://java.sys-con.com/read/458183.htm
http://cwiki.apache.org/confluence/download/attachments/70211/Tuscany-SOAWorld.ppt?version=1
http://apache-tuscany.blogspot.com/


Thanks for the article. I kind of get idea now. This is what I get from it:
SCA is a kind of glue code for glueing pool of apps to be used by
another apps. So our new apps will connect to SCA and SCA will connect
to these pool of apps. CMIIW.


You can find more information at: http://incubator.apache.org/tuscany/.

Tuscany is not an ESB offering. My understanding is that it's closer to the
business application developers by providing a service assembly model and
programming model. The ESB will provide the flexible IT infrastructure that
composite applications can be deployed.


I don't quite understand. People out there compares SCA with JBI,
which is an ESB. :( And that's an insight that I get from those
articles you gave me too.



This may help:
http://www.osoa.org/display/Main/Relationship+of+SCA+and+JBI

--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: SDO: some question while using sdo with EJB

2007-11-30 Thread Jean-Sebastien Delfino

[snip]
kelvin goodson wrote:

Hello again,
  thanks for your questions. With regards to your first question,  I
think it's basically the same answer as I posted earlier today,  that
you can create an ObjectInputStream associated with an arbitrary
HelperContext.

However, as an aside, I realised in my earlier response that I perhaps
slightly misrepresented the SDO API's capability,  saying that it has
no way to deal with your issue.  That's a slight inaccuracy, since we
are using SDO's API to read the object,  but just providing a
customised ObjectInputStream,  so I should have said that the SDO API
has no explicit means of solving the issue,  but currenlty relies on
implementations to do the kind of thing we have done by providing a
specialised ObjectInputStream.



Coincidentaly I'm starting to work on an SCA application that is going 
to call an EJB running on Geronimo from an SCA composition and I want to 
be able to send SDOs to the EJB at some point. It looks like my use case 
is similar to Eg's use case.


My EJB container is not SDO-aware and therefore is not going to use a 
customized SDO-aware ObjectInputStream... So is there any other way to 
get the SDO deserialized with the default JDK non-SDO-aware 
ObjectInputStream?


The other related question is. In such a server environment what are the 
possible scopes for SDO metadata? thread? classloader? can I define new 
scopes?


Thanks.

--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: SCA WS Binding Wrapper Style

2007-11-26 Thread Jean-Sebastien Delfino

Simon Laws wrote:
[snip]


The assumption I'm making from the info you gave is that you want to have
two SCA components communicate with the same domain but be able to specify
the WSDL that the web services binding uses.  I guess what you would need to
be able to do is specify a binding something like

component name=MyClientComponent
implementation.java class=org.apache.tuscany.SomeImpl/
reference name=myService target=MyServiceComponent/MyService
   binding.ws wsdlElement=
http://tuscany.apache.org#wsdl.binding(MyServiceSOAP11Binding)/
/reference
etc..

Where you are referencing a WSDL binding but not providing a service
location with a view to having the domain sort this out for you. A similar
thing would appear on the service end also.

This all sounds plausible but I just took a look at the SCA WebServices
binding specification and it says that when the #wsdl.binding form is used
the endpoint address URI must be provided via the URI attribute on the
binding which makes it a little difficult for the domain logic to help you
out. There is a possibility that this is a fault in the spec in this case
but let me try a few experiments and think about it a little before we call
it out. If others know the answer now feel free to jump in.



My understanding is that wiring is not limited to the SCA binding. It's 
probably a bug in the WS binding spec, which should allow the WS 
endpoint address to be determined through wiring in the domain.


In other words the above XML snippet should be made to work.

--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Cannot obtain composite service directly

2007-11-20 Thread Jean-Sebastien Delfino

Adrian Mos wrote:

Hi Luciano,

Thanks for your help! Indeed, if I use 
component_name/$promoted$.service_name it actually works (in my case 
InnerWeatherComponent/$promoted$.InnerWeatherService).
However as you mention in your older post, we should definitely be able 
to just look up the service_name directly. The current workaround 
means that the client must know the actual component promoting the 
service and if the composite writer decides to wire the service 
differently (to another component exposing the same interface), the 
client must know about it. Therefore, in the current situation, the 
composites do not hide their internal structure properly and in my 
view this is not completely aligned with the SCA philosophy.




It's a bug, getService(interface, InnerWeatherService) should work if 
InnerWeatherService is declared in a top-level composite (i.e. a 
composite added to the domain level composite).


Could you please open a JIRA issue for this? Thanks.
--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



At ApacheCon this week

2007-11-12 Thread Jean-Sebastien Delfino

Anyone going to ApacheCon?

I'm there at the Hackathon today and will be there all week.

Drop me an email if you're going to be there and want to meet!

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Generating Ant Re: Please nominate the bug fixes for Tuscany SCA Java 1.0.1 release

2007-10-23 Thread Jean-Sebastien Delfino

Raymond Feng wrote:

Hi,

The plugin is a great relief. Thanks!

For the binary distro, we used to have all the jars (including tuscany 
and 3rd party) under lib folder. Are you proposing to have tuscany 
jars under modules and 3rd party jars under lib now? It seems that 
the generated ant scripts follow that pattern.


Raymond


The Tuscany module JARs are already under modules in 1.0.

The generated ant scripts just follow the existing pattern like: 
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/calculator-webapp/build.xml


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: SCA WCF Integration

2007-10-23 Thread Jean-Sebastien Delfino

Jean-Sebastien Delfino wrote:

Anderson, Jeff T (CA - Toronto) wrote:
Our client is also very interested in this topic, be very interested 
in seeing how it performed tighter integration, such as being able to 
declare an intent on a wcf service method and use the Tuscany or 
other SCA policy framework to satisfy the intent at runtime.  Just 
one of many examples, I don't know a lot about W.CF but it does seem 
that the approach is very similar to SCA, so in theory, a binding 
shouldn't necessarily be Uber difficult.

Is anybody else interested in tighter integration up there?
Regards
Jeff



From: Simon Nash [mailto:[EMAIL PROTECTED]
Sent: Mon 2007-10-22 10:33
To: tuscany-user@ws.apache.org
Subject: Re: SCA WCF Integration



You are correct that in Tuscany currently we don't have any way to
make a WCF Web service part of the SCA domain.

I think there are (at least) two options for how you could do this.

1. Use binding.ws on a SCDL reference to connect from the SCA domain
to the WCF Web service.  The reference is part of the SCA domain but
the WCF Web service that it invokes is not part of the SCA domain.

2. Create an SCA service that encapsulates the WCF service, and wire
to this SCA service in the usual way.  The encapsulating SCA service
is part of the SCA domain.  It would be possible to create a new
component implementation type implementation.wcf to specify this
encapsulation and perform the necessary WCF invocations.

This is a great topic to discuss and I'm sure others will have other
alternatives and opinions on the pros and cons of various approaches.

   Simon

James, Steven wrote:

 

I have a question regarding WCF and SCA integration which I am hoping
someone in this list can give clarity to.

As far as I see it currently a WCF Web service is not part of the
SCADomain. If a composed component had a dependency on a WCF component
could an explicit reference be set to that WCF web service in the SCDL
file? Or is this an internal matter and how we connect and invoke the
WCF component should be encapsulated in our SCA component?

Regards,

Steve




A few more thoughts, using the WCF Getting Started Calculator example 
at http://msdn2.microsoft.com/en-us/library/ms751519.aspx to 
illustrate what could be done...


- Step 1: Model the WCF service as an SCA reference with a WS binding, 
would look like this:


composite xmlns=http://www.osoa.org/xmlns/sca/1.0;
  targetNamespace=http://sample;
  xmlns:sample=http://sample;
  name=Calculator

   !-- A Java Calculator service component,
   delegating the add operation to the WCF Calculator service --
   component name=CalculatorServiceComponent
   implementation.java class=calculator.CalculatorServiceImpl/

   !-- the addService reference bound to the WCF Calculator 
service --

   reference name=addService
   binding.ws port=...the WCF Calculator WSDL.../
   /reference

   /component

/composite

Here the SCA domain only contains a reference to the external WCF 
service and its WSDL configuration.



- Step 2: Model the WCF Calculator as an SCA component implementation, 
like that:


composite xmlns=http://www.osoa.org/xmlns/sca/1.0;
  targetNamespace=http://sample;
  xmlns:sample=http://sample;
  name=Calculator

   !-- A Java Calculator service component
   delegating the add operation to the WCF Calculator service 
component --

   component name=CalculatorServiceComponent
   implementation.java class=calculator.CalculatorServiceImpl/

   !-- the addService reference wired to the WCF Calculator 
service component --
   reference name=addService 
target=WCFCalculatorServiceComponent/


   /component

   !-- A service component representing the WCF Calculator example --
   component name=WCFCalculatorServiceComponent

   !-- Web.config defines the app's services and references --
   implementation.net 
config=C:\WCF-Samples\TechnologySamples\Basic\GettingStarted\CS\service\Web.config/ 



   /component

/composite

Here we would represent the WCF app as a component implementation, 
introspect its WCF Web.config or App.config file to determine the 
services it offers, its references and configuration. Once you've 
represented the WCF app as an SCA implementation + component you can 
start using SCA wiring in your SCA domain as usual.



To get Step 1 going will only require some configuration and Axis2 / 
WCF interop testing.


Step 2 will take a little bit of coding to support 
implementation.net and introspect WCF configs but it should be 
pretty easy to do...


Thoughts?



A few more code snippets to help illustrate Step 2:

This Web.config could be represented as an SCA component providing a 
service:

configuration
 system.serviceModel
   services
 service
 name=Microsoft.ServiceModel.Samples.CalculatorService
 behaviorConfiguration=CalculatorServiceBehavior

Re: Why there is no tuscany-binding-jms-1.0-incubating.jar in release apache-tuscany-sca-1.0-incubating.zip

2007-10-22 Thread Jean-Sebastien Delfino
Luciano Resende wrote:
 The following JIRA [1] has some more info on the JMS Binding and it's
 current status.

 [1] https://issues.apache.org/jira/browse/TUSCANY-1789

 On 10/19/07, JunJie Nan [EMAIL PROTECTED] wrote:
   
 $  ls modules/*-binding-*
 modules/tuscany-binding-dwr-1.0-incubating.jar
 modules/tuscany-binding-ejb-1.0-incubating.jar
 modules/tuscany-binding-feed-1.0-incubating.jar
 modules/tuscany-binding-http-1.0-incubating.jar
 modules/tuscany-binding-jsonrpc-1.0-incubating.jar
 modules/tuscany-binding-notification-1.0-incubating.jar
 modules/tuscany-binding-rmi-1.0-incubating.jar
 modules/tuscany-binding-sca-1.0-incubating.jar
 modules/tuscany-binding-sca-axis2-1.0-incubating.jar
 modules/tuscany-binding-sca-xml-1.0-incubating.jar
 modules/tuscany-binding-ws-1.0-incubating.jar
 modules/tuscany-binding-ws-axis2-1.0-incubating.jar
 modules/tuscany-binding-ws-xml-1.0-incubating.jar

 I can not find it on maven2 repository too. Any story?  Thanks!
 --
 Cheers
 Jun Jie Nan
   ∧ ∧��
 ミ^ō^ミ灬)~

 


   

If you want to use the JMS binding now (with its current limitations),
you should be able to build it from the Subversion trunk:
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/binding-jms/

It should also be in the nightly build at:
http://incubator.apache.org/tuscany/tuscany-downloads-documentations.html

Are you interesting in getting the JMS binding in a release soon?

-- 
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Please nominate the bug fixes for Tuscany SCA Java 1.0.1 release

2007-10-22 Thread Jean-Sebastien Delfino

Raymond Feng wrote:

Hi,

As it was originally proposed, we'll do a SCA Java 1.0.1 release using 
the 1.0 branch as the base line. The 1.0.1 is intended to be a bug fix 
release and it should contain only non-disruptive changes. The 
approach we take is to pull post-1.0 commits of incremental bug fixes 
from the trunk and merge them into the 1.0.1 branch.


Please start to nominate what fixes should be pulled into this release 
as soon as you can. I created a wiki page at 
http://cwiki.apache.org/confluence/display/TUSCANYWIKI/Desired+bug+fixes+for+SCA+Java+1.0.1+release. 
I would appreciate if you can fill in your desired items there.


We probably need to coordinate the merges once we have the list built 
by the community.


Thanks,
Raymond

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Replying to tuscany-user only to avoid cross posting.

In past releases some of our samples Ant build.xml files had incorrect 
dependencies. I had proposed a Maven plugin [1] to help fix and generate 
them automatically.


I started to work on that plugin yesterday, hoping that it will help 
verify (if not generate) our build.xml files this time. If there's no 
objections I'll put the plugin under modules/maven-ant-generator.


[1] http://marc.info/?l=tuscany-devm=119064381620712

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: throws Exception problem

2007-10-22 Thread Jean-Sebastien Delfino

Hi Nishant,

I just realized that nobody has responded to your email yet. I have a 
few questions about the issue you're seeing.


Nishant Joshi wrote:

About jira 1562 , I have one user defined exception class in same directory
as my impl. and service, now i have generated wsdl on the fly.
but there is a problem with namespace for this exception class


What's the exception class name and what's the generated namespace?


and it was
creating problem when i was creating client in Eclipse.


Are you taking the WSDL generated by Tuscany and using some Eclipse tool 
to generate a (non-Tuscany) Web Services proxy? I'm guessing here so 
feel free to correct me if I guessed wrong :)


Which Eclipse tool? Eclipse WTP or another Web Services tool?


I am using eclipse's
facility to create client for me.
problem was in eclipse MyException.java is resides in abc.xyz.xsd package
while other classes(stub,proxy etc...) which was generated by eclipse is
accessing like abc.xyz.MyException and it was giving me error sign at same
place.
actually MyException was at abc.xyz.xsd, So why other classes has wrong
package name?
Why two packaging structure for one class?
is it make sense?
  


Are you generating the other classes that reference abc.xyz.MyException 
with the same Eclipse tool? or did you write these classes by hand?


Could you list the steps that you're going through, and indicate what 
tool you use when? it'll help us understand your scenario and help 
you... Thanks.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [DISCUSS] Tuscany SCA Roadmap and next releases

2007-10-19 Thread Jean-Sebastien Delfino

Simon Laws wrote:

On 10/17/07, Raymond Feng [EMAIL PROTECTED] wrote:
  

I collected all the input we have so far at the following WIKI page:


http://cwiki.apache.org/confluence/display/TUSCANYWIKI/Roadmap+Discussion



Thanks for doing that!



Coincidentally there's a recent news article related to the worthwhileness
of these types of lists over on INFOQ:
http://www.infoq.com/news/2007/10/product-backlogs-wasteful

We did try having the wishlist jira version but it never really ended up
being used very much.

   ...ant


[snip]


Thanks for the ref ant. Very interesting. In our case the list we have
generated is very much a list of features desired but not yet
implemented.I wasn't suggesting we take the next step and analyse them all
in detail though, just that we don't loose these thoughts in case someone
decides that they would like to do the analysis in the future.

I think this thread is equating the act of creating a Roadmap with
identifying the ideas that the currently active community agree will add
real value to Tuscany SCA and it's users.  I'm keen though that we don't
create an immutable  plan/roadmap and that we have plenty of ideas hanging
around that may encourage those not currently contributing to do so. I see
the danger of a stated roadmap is that it gives the impression that that is
what is going to happen, that all the items are being worked on and
encourages people to sit back and wait for features to arrive.

Re. the wish JIRA type. maybe now is the time. The wiki page is  a long
list already. Wish list items don't require much management, they may hang
around for a long time but they provide inspiration to newcomers and to the
active community when we inevitably repeat this exercise.

Regards

Simon

  


How about trying to understand the use cases for that Wiki page and/or 
JIRA list? Here are a few:


A) I just found out about SCA and Tuscany. I want to know what it does 
now and what it'll do in the future.


B) I'm using Tuscany. I want to know what features will be provided, 
short, middle and long term.


C) I'd like to contribute to Tuscany. Who's working on what and are 
there any interesting areas that I could jump into?


more thoughts?

Here are some roadmaps that I found worthwhile and useful as a lurker, 
user, and potential contributor. There are some good organization + 
format ideas in these roadmaps:


[1] http://harmony.apache.org/roadmap.html
[2] http://cwiki.apache.org/GMOxDEV/roadmap-for-21.html
[3] http://cwiki.apache.org/GMOxPMGT/geronimo-what-folks-are-working-on.html
[4] http://wiki.apache.org/ws/FrontPage/Axis2/post-1%2e3-plans
[5] http://ode.apache.org/roadmap.html
[6] http://subversion.tigris.org/roadmap.html

Going back to the use cases: IMO a roadmap like [3] answers question 
(C), and questions (A) and (B) too... as seeing people names and the 
releases that they target shows that the listed features are not just 
wishes or vaporware.


Hope this helps.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Tuscany service with bea WebLogic

2007-10-16 Thread Jean-Sebastien Delfino

[snip]
Venkata Krishnan wrote:

..or how about just supporting introspection of one level of jars within
wars if jars are nested inside jars we don't look at them... will this
bring down the complexity a bit.. or would it actually not matter that much
...

  

I think that the combinations that make sense are:
- now, .jars in .war!WEB-INF/lib
- then later, .wars in .ears
+1 on not trying jars nested inside jars, I've never seen that pattern, 
and was even not thinking about it.



- Venkat

On 10/16/07, ant elder [EMAIL PROTECTED] wrote:
  

On 10/12/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:
snip

I think this goes back to what I describing earlier in this thread, if


we want to support WARs as a first class SCA contribution type we have
to consider artifacts stored in JARs under WEB-INF/lib as integral part
of the Web Archive like other artifacts in the WAR. We'll need to open
these JARs and process them like the rest of the artifacts in the WAR.

Doing this will help Nishant and all others running Tuscany on WebLogic.
  

Ok but from what was said earlier (we would have to consider this
carefully
as allowing for nested archives may cause all kinds of complications) it
doesn't sound like it will be a really quick thing to fix. It looks like
WebLogic always creates a jar from the classes folder with a fixed name -
_wl_cls_gen.jar - so how about just have some special case code to deal
with
that one specific jar for now just to get Tuscany running on WebLogic?

   ...ant

I'm not sure that one JAR _wl_cls_gen.jar or all JARs under 
WEB-INF/lib will make a difference in terms of complexity. Maybe we can 
fallback to the special case hack if a clean solution really does not 
work, but I'd try suggest to try the clean solution first.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: strange dependency change

2007-10-15 Thread Jean-Sebastien Delfino

Radim Kolarik wrote:

Hi Sebastien,

I don't understand your question. What do you mean by level of
Tuscany? We used the same build and same version - 1.0-incubating, if
that is the question...
  


Yes that was the question :) I just wanted to know which Tuscany version 
you were using and make sure that you were using the same version in 
both cases.


One more question, which Maven version are you using?


We used exactly the same build scripts, same version, but suddenly the
jar started to appear in the built WAR. I would bet that the JAR is
now appearing in calculator example as well, meaning it won't run.
About two weeks ago, the JAR was not there...
  


I'll try the Tuscany 1.0 release later today, but can already confirm 
that I am able to reproduce the problem with the Tuscany trunk with 
Maven 2.0.7.


I'll investigate the Maven dependency analysis report to see where this 
new dependency on servlet-api is coming from...


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: strange dependency change

2007-10-15 Thread Jean-Sebastien Delfino

Jean-Sebastien Delfino wrote:

Radim Kolarik wrote:

Hi Sebastien,

I don't understand your question. What do you mean by level of
Tuscany? We used the same build and same version - 1.0-incubating, if
that is the question...
  


Yes that was the question :) I just wanted to know which Tuscany 
version you were using and make sure that you were using the same 
version in both cases.


One more question, which Maven version are you using?


We used exactly the same build scripts, same version, but suddenly the
jar started to appear in the built WAR. I would bet that the JAR is
now appearing in calculator example as well, meaning it won't run.
About two weeks ago, the JAR was not there...
  


I'll try the Tuscany 1.0 release later today, but can already confirm 
that I am able to reproduce the problem with the Tuscany trunk with 
Maven 2.0.7.


I'll investigate the Maven dependency analysis report to see where 
this new dependency on servlet-api is coming from...




Here's what I found after digging into the Maven POM files and the SVN 
change history, an unfortunate sequence of events.


The dependency on servlet-api-2.3 is coming from an Apache Rampart 
module. See rampart-project-1.3.pom [1].


In Tuscany revision r576569 [2] (between Tuscany 1.0 RC1 and RC2) we 
made a change to remove the dependency on rampart-project-1.3 as it was 
a snapshot at the time (and we did not want any snapshots in the release).


However we left a dependency on rampart-core-1.3.jar, which was 
published on ibiblio.org but did not have a Maven POM published with it 
(from what I see in an archive of my Maven repository from that time, 
only the JAR file and an MD5 signature seemed to have been published).


On Oct 4th, a Maven POM for rampart-core.1.3.jar was published on 
ibiblio.org [3]. That POM declared a dependency on the 
rampart-project-1.3, bringing back rampart-project-1.3.pom and the 
dependency on servlet-api-2.3.jar.


To summarize:
- nothing changed in the published Tuscany 1.0 artifacts
- nothing changed in the Rampart 1.3 artifacts published on ibiblio.org
- the publication of rampart-core-1.3.pom at [3] on Oct 4th suddenly 
caused that new dependency on servlet-2.3.api.jar.


So here's the trap we fell into: A dependency on a JAR published on the 
ibiblio.org Maven repository not accompanied by a Maven POM can break us 
later if somebody publishes a POM that adds transitive some dependencies 
for example... That's tricky.


I'm going to fix the Tuscany trunk to exclude servlet-api-2.3.jar. Our 
next release should include that fix (BTW we've committed a number of 
fixes on top of 1.0 recently and I'm starting to think that we should 
have another release soon). Are you OK with the exclusion workaround you 
have found for now until the next release?


[1] 
http://mirrors.ibiblio.org/pub/mirrors/maven2/org/apache/rampart/rampart-project/1.3/rampart-project-1.3.pom
[2] 
http://mail-archives.apache.org/mod_mbox/ws-tuscany-commits/200709.mbox/[EMAIL PROTECTED]
[3] 
http://mirrors.ibiblio.org/pub/mirrors/maven2/org/apache/rampart/rampart-core/1.3/


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: strange dependency change

2007-10-12 Thread Jean-Sebastien Delfino

[snip]
Radim Kolarik wrote:

Hi,

our web service build using SCA is implemented as a WAR application.
Our WAR pom.xml (Maven) file has the following dependencies:

dependency
  groupIdorg.apache.tuscany.sca/groupId
  artifactIdtuscany-host-webapp/artifactId
  version1.0-incubating/version
/dependency
dependency
  groupIdorg.apache.tuscany.sca/groupId
  artifactIdtuscany-binding-ws-axis2/artifactId
  version1.0-incubating/version
/dependency
dependency
  groupIdorg.apache.tuscany.sca/groupId
  artifactIdtuscany-implementation-java-runtime/artifactId
  version1.0-incubating/version
/dependency

Some time ago (at the end of last month), this generated a WAR file
without servlet-api JAR in it's WEB-INF\lib folder. Now, for some
reason, it generates a war file with servlet-api in it, resulting in
the war file not working on Websphere or Weblogic.
  


Which levels of Tuscany were you using before? and now?


Do you know what happened and is there any way of excluding the jar
from war automatically at tuscany side? We solved the problem by
adding an exclusion to the following dependency:
  


It'll depend on your answer to the above question :)

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Tuscany and Websphere

2007-10-12 Thread Jean-Sebastien Delfino

Matthew Peters wrote:
I am trying to understand how a contribution that contains a mix of 
artifacts, including JEE artifacts, should be handled by Tuscany and the 
runtime into which it is being deployed.
  


SCA-enabling of a JEE runtime and the scenarios that this will address 
are introduced in a whitepaper at:

http://www.osoa.org/pages/viewpage.action?pageId=3980

Tuscany currently supports what's described in this whitepaper as 
Single Module Assembly: A Web module is used as an SCA contribution 
containing component implementations. Components are assembled inside 
the Web module using SCA composites. The whitepaper mentions a single 
META-INF/web.composite, right now in Tuscany we allow you to name your 
composite however you want.


I'd like to tacke the main other scenarios described in the whitepaper 
in the next releases, as mentioned in the Tuscany Roadmap discussion at:

http://marc.info/?l=tuscany-userm=119203494411767w=2

Some of this work has already started in the context of the Tuscany - 
Geronimo plugin at 
http://svn.apache.org/repos/asf/geronimo/plugins/tuscany/trunk.


Here's a scenario just to make it concrete. Imagine I have a contribution 
that includes some JEE UI components like some servlets or JSPs, some Java 
SCA components, and just to make it tricky an EJB that is also an SCA 
component (if that's not possible yet then I am guessing it will be in the 
future).
If I understand correctly, this will probably translate to something 
like follows (using the terminology from the whitepaper):


composite

 component name=MyUI
   implementation.web module=ui.war/
   reference name=myBackendService target=MyBackend/MyService/
 /component

 component name=MyBackend
   implementation.ejb ejb=backend.jar/
 /component
/component

/composite

As a first step, I think we could just represent Web modules and EJB 
modules as component implementations and not necessary try to boil the 
ocean right away with individual EJBs as component implementations, 
maybe later...


And suppose, to be specific, that I want to deploy this onto 
Websphere Application Server (WAS).


In this scenario I really want to understand things like what should 
happen during deployment and runtime, and how Tuscany and WAS should 
cooperate during class loading and instantiation and do any dependency 
injection.


I can think of two different approaches. 


The first is to put Tuscany firmly in charge

[snip]

The other approach is to leave WAS in charge as far as possible.

[snip]

Tuscany is not trying to reinvent a JEE container. It seems that the JEE 
container should be running the JEE artifacts and Tuscany would just 
inspect the JEE artifacts and derive their SCA ComponentType from it 
would find in them.


[snip]
Essentially it seems to me that Tuscany and WAS are both meaty runtimes 
that are used to being in charge by themselves, especially WRT class 
loading and instantiation. Has anyone thought this all through and can 
tell me how it ought to work?
  


We only started to discuss the JEE integration in the roadmap this 
week... so it's a little too early to say how it ought to work :).


I don't think that Tuscany should impose its own classloading and 
instantiation mechanism.


I think that Classloading is a function of the hosting environment. 
Tuscany needs to use the ClassLoader provided by your particular J2SE / 
OSGi / Tomcat / Geronimo / WebSphere / WebLogic / JBoss / Glassfish / 
etc hosting environment. If it doesn't, then it's a bug which ought to 
be fixed. It looks like there's active discussions on our dev list and 
people working on it to help Tuscany play well with OSGi as we speak :).


IMO instantiation of an implementation is a function of the particular 
implementation type container:
- An implementation.java is instantiated by the Tuscany 
implementation-java container, according to the rules in the SCA Java 
CI spec.
- An implementation.bpel is instantiated by Apache ODE (the BPEL 
engine integrated with Tuscany).
- An implementation.web is instantiated by the Web container in which 
it is deployed.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [DISCUSS] Tuscany SCA Roadmap and next releases

2007-10-12 Thread Jean-Sebastien Delfino

Matthew Peters wrote:
As you'll guess from the post on Websphere and Tuscany that I put up a 
couple of days ago,


My response: http://marc.info/?l=tuscany-userm=119223827124704

I would like to see where you want to go in the area 
of


  

- Webapp and EJB module integration
I'd like to track the OASIS work on this and implement it in parallel in 



  
Tuscany. Many users have existing J2EE EJB and EAR modules that they'll 
need to integrate in bigger SCA compositions. Also Webapp developers 
will need a non-intrusive way to wire a Webapp with other SCA components 



  

in an SCA domain.



For example when you wire a webapp to an SCA component, how is the SCA 
domain found,


I think that an SCA-enabled runtime (a JEE runtime or any other form of 
SCA enabled runtime) needs to be configured with a domain URI that it 
will belong to.


At the moment in Tuscany we just pass that URI when we bootstrap the 
runtime. If you're up for a long read, see the SCA Domain discussion 
thread on the tuscany-dev list, here's a pointer to the last email in 
that thread: http://marc.info/?l=tuscany-devm=119196408721454w=2



and who starts and stops it?


The domain administrator :) independent of what JEE or other apps are 
deployed to it.


How and when did the components 
get deployed into it?


I can think of three main scenarios:

- An SCA domain administrator goes to his domain management application 
and uploads a contribution, then adds some composites from the 
contribution to the domain level composite. At that point the SCA domain 
management app finds the appropriate runtime node for the contribution, 
distributes the contribution to the node.


- An administrator goes to a node belonging to an SCA domain, uploads a 
contribution, then adds some composites from the contribution to the 
domain level composite.


- A contribution and composites have already been installed on a node by 
some mechanisms unknown to Tuscany, the SCA domain administrator goes to 
the domain management application to register the presence of these 
composites in the domain.


... and all kinds of variations of the above, but these scenarios are 
not really specific to JEE integration, it's just how I view an SCA 
domain being used.


And wre we ever going to have webapps which *are* 
SCA components so that we want to do dependency injection directly into a 
servlet for example? 
  


I guess this is the idea of being able to declare a JEE Web module as an 
SCA component implementation. You can declare SCA references on the Web 
module, wire them to SCA services, and invoke them from code running in 
the Webapp.


I'm not very fond of mixing programming models, as it makes tech people 
happy but usually gets in the way of the business application developer 
who's trying to achieve something without having to learn 4 programming 
languages, 12 APIs, and 37 different ways to bind XML to Java. So I hope 
we can do this in a non-intrusive way without introducing too many SCA 
programming model artifacts in the JEE Webapp.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Tuscany service with bea WebLogic

2007-10-11 Thread Jean-Sebastien Delfino

Nishant Joshi wrote:

I have found one work around for this problem but i would like to ask one
question that if in my WAR file if i put all WEB-INF\classes files in a jar
and put it under WEB-INF\lib directory and clean my classes directory than I
can't accesss services. is it bug in tuscany or i can't access like this
way. This is the problem with weblogic, I have tested this scenario with
Tomcat where it was working fine but result was as expected i can't access
service from lib directory.


  

Hi Nishant,

I created a WAR similar to what you're describing (moved the classes to 
a JAR placed in the lib directory) and I think am able to reproduce the 
problem you're seeing, on Tomcat as well. Here's the exception I'm 
seeing. Could you please confirm that this is the exception you're seeing?


Thanks.


 HTTP Status 500 -



*type* Exception report

*message*

*description* _The server encountered an internal error () that 
prevented it from fulfilling this request._


*exception*

org.apache.jasper.JasperException: An exception occurred processing JSP page 
/calc.jsp at line 37

34: thExpression/ththResult/th
35: /tr
36: tr
37: td2 + 3/tdtd%= calculatorService.add(2, 3) %/td
38: /tr
39: tr
40: td3 - 2/tdtd%= calculatorService.subtract(3, 2) %/td


Stacktrace:

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:524)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:435)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

org.apache.tuscany.sca.host.webapp.TuscanyServletFilter.doFilter(TuscanyServletFilter.java:93)

*root cause*

org.osoa.sca.ServiceUnavailableException: No service invoker is available for 
reference default (bindingURI=CalculatorServiceComponent operation=add).

org.apache.tuscany.sca.binding.sca.impl.RuntimeSCAReferenceBindingProvider.createInvoker(RuntimeSCAReferenceBindingProvider.java:192)

org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.addBindingInterceptor(RuntimeWireImpl.java:214)

org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.initInvocationChains(RuntimeWireImpl.java:156)

org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.getInvocationChains(RuntimeWireImpl.java:97)

org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.getInvocationChain(JDKInvocationHandler.java:190)

org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:124)
$Proxy31.add(Unknown Source)
org.apache.jsp.calc_jsp._jspService(calc_jsp.java:76)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

org.apache.tuscany.sca.host.webapp.TuscanyServletFilter.doFilter(TuscanyServletFilter.java:93)

*note* _The full stack trace of the root cause is available in the 
Apache Tomcat/6.0.14 logs._


--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Tuscany service with bea WebLogic

2007-10-11 Thread Jean-Sebastien Delfino

Simon Laws wrote:

On 10/11/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:
  

Nishant Joshi wrote:


I have found one work around for this problem but i would like to ask
  

one


question that if in my WAR file if i put all WEB-INF\classes files in a
  

jar


and put it under WEB-INF\lib directory and clean my classes directory
  

than I


can't accesss services. is it bug in tuscany or i can't access like this
way. This is the problem with weblogic, I have tested this scenario with
Tomcat where it was working fine but result was as expected i can't
  

access


service from lib directory.



  

Hi Nishant,

I created a WAR similar to what you're describing (moved the classes to
a JAR placed in the lib directory) and I think am able to reproduce the
problem you're seeing, on Tomcat as well. Here's the exception I'm
seeing. Could you please confirm that this is the exception you're seeing?

Thanks.


  HTTP Status 500 -



*type* Exception report

*message*

*description* _The server encountered an internal error () that
prevented it from fulfilling this request._

*exception*

org.apache.jasper.JasperException: An exception occurred processing JSP
page /calc.jsp at line 37

34: thExpression/ththResult/th
35: /tr
36: tr
37: td2 + 3/tdtd%= calculatorService.add(2, 3) %/td
38: /tr
39: tr
40: td3 - 2/tdtd%= calculatorService.subtract(3, 2) %/td


Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(
JspServletWrapper.java:524)
org.apache.jasper.servlet.JspServletWrapper.service(
JspServletWrapper.java:435)
org.apache.jasper.servlet.JspServlet.serviceJspFile(
JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.tuscany.sca.host.webapp.TuscanyServletFilter.doFilter(
TuscanyServletFilter.java:93)

*root cause*

org.osoa.sca.ServiceUnavailableException: No service invoker is available
for reference default (bindingURI=CalculatorServiceComponent operation=add).

org.apache.tuscany.sca.binding.sca.impl.RuntimeSCAReferenceBindingProvider.createInvoker
(RuntimeSCAReferenceBindingProvider.java:192)

org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.addBindingInterceptor
(RuntimeWireImpl.java:214)

org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.initInvocationChains(
RuntimeWireImpl.java:156)

org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.getInvocationChains(
RuntimeWireImpl.java:97)

org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.getInvocationChain
(JDKInvocationHandler.java:190)
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
(JDKInvocationHandler.java:124)
$Proxy31.add(Unknown Source)
org.apache.jsp.calc_jsp._jspService(calc_jsp.java:76)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(
JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(
JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.tuscany.sca.host.webapp.TuscanyServletFilter.doFilter(
TuscanyServletFilter.java:93)

*note* _The full stack trace of the root cause is available in the
Apache Tomcat/6.0.14 logs._

--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

This error from the default SCA binding is basically saying that the wire


to the target service is not configured correctly (or at all). In particular
in this case the reference has the name default which is the name set when
the proxy is created for a target component that can't be found in the local
runtime. As you might expect there can be several reasons for this. Are you
seeing any warnings reported when the contributions is processed? What I'm
thinking about in particular is elements that can't be parsed because the
appropriate extension isn't loaded.

Regards

Simon

  


I investigated a little more and the issue is pretty simple: Tuscany 
does not scan for .composite files in JARs placed under WEB-INF/lib.


I think that it's by design - although we can discuss changing the 
design :). We currently support the following SCA contribution packaging 
schemes:


- A folder, SCA artifacts (.composite, .componentType files etc.) are 
placed under the folder or sub-folders.


- A JAR, SCA artifacts are placed directly in the JAR.

- A WAR, SCA artifacts are placed directly in the WAR.

We do not support nesting JARs inside JARs or JARs inside

[DISCUSS] Tuscany SCA Roadmap and next releases

2007-10-10 Thread Jean-Sebastien Delfino

Hi all,

We've released v1.0 of Tuscany SCA 2 weeks ago... So it's probably the 
right time now to ask what people want to do next and try to build a 
roadmap for the next few releases.


Here are a few random thoughts to initiate the discussion. I've just 
listed the things that came to my mind this morning, but I'm sure that 
there's much much more to add :)


- Support for transaction and reliability policies
Several users have asked for it, and there's now a public draft of the 
transaction policy spec


- Webapp and EJB module integration
I'd like to track the OASIS work on this and implement it in parallel in 
Tuscany. Many users have existing J2EE EJB and EAR modules that they'll 
need to integrate in bigger SCA compositions. Also Webapp developers 
will need a non-intrusive way to wire a Webapp with other SCA components 
in an SCA domain.


- Conversational and non blocking + callback programming model over 
Web2.0 bindings
Seems like a good fit with JSON for example... in particular Ajax 
interactions fit really well with the SCA non blocking + callback 
programming model.


- Ability to model client side JavaScript components
Looking at the Store sample for example, I'd like to be able to model 
the client Javascript as a component with SCA references to the 
ShoppingCart and Catalog services, instead of manually creating JSON and 
Atom client proxies in the client Javascript code.


- Support for Atom using Apache Abdera
Abdera just released their 0.3.0, I've started to look at it and it 
looks pretty good. I think we should try to port our Atom/RSS binding to 
it and see how it compares with the Rome library which we are currently 
using.


- More modular distributions, in addition to our current all-in-one 
distribution, distribute smaller packages that people can choose to 
install or not?


- Some clean up of the core runtime invocation and injection mechanism, 
we can probably simplify and actually remove code in a number of places :)


Could people please jump in and say what they want to see in the next 
few releases? What they need for their Tuscany based projects? What is 
missing? What needs to be improved or fixed?


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Reg: Big-Bank Demo

2007-10-04 Thread Jean-Sebastien Delfino

Hi, some answers inline.

Ashwin Jeksani wrote:

Hi,

Can someone please clear my doubts?

1. In the bigbank-account demo the Account Component is refering to
AccountData Component in the same Composite then why do we have two
composite files(BigBank.composite  AccountData.composite) can some one
explain me?
  


AccountData could have been just declared in BigBank.composite, the idea 
with this demo was to illustrate that you can nest composites, and then 
once you've done that you can make changes to AccountData, grow it from 
one small component to a bigger assembly of components without having to 
change BigBank.composite. That's all :)



2. If we are referring to a local component and sending the input as a
String and the response is an Object then do we have to serialize the
object?
  


No serialization should be needed to call a local component (the 
interface is not marked as @Remote, the component runs in the same node 
and no binding is used to call it).




Thanks  Regards,
Ashwini Kumar

  

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Tuscany service with bea WebLogic

2007-10-04 Thread Jean-Sebastien Delfino

Nishant Joshi wrote:

Hi All,

I am trying to access Tuscany service from bea weblogic. I have deployed it
on weblogic successfully but i can't generate wsdl on the fly. has
anybody tried to deploy and access tuscany service from weblogic?
I am using latest tuscany sca build. I am using weblogic 9.2 MP2


  

Hi,

I have not tried Tuscany on WebLogic. Maybe some other users have tried it?

Is the Web Service actually working and it's only the WSDL generation 
that doesn't work?


Just to be sure, is the exact same WAR working on Tomcat?

Are you seeing any exception? What are you getting when you open the 
serviceURL?wsdl?


Thanks

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Online Store example - JSONRpcClientException

2007-10-03 Thread Jean-Sebastien Delfino

Steve Jones wrote:

On Tuesday 02 October 2007 18:38, Jean-Sebastien Delfino wrote:
  

Steve Jones wrote:


Hi,

I'm having problems with the online store example:

http://incubator.apache.org/tuscany/sca-java-10-incubating-release-su
mmary.data/getting-started-1.0.pdf

The example builds and starts up OK and the console list the correct
servlet mapping.

When I point my browser at:

http://localhost:8080/ufs/store.html

The store page is displayed OK but the Apple,Orange,Pear rows and
check boxes are missing.

The firefox error console shows:

  Error: uncaught exception: JSONRpcClientException: Not Found

By inserting a few alerts in store.js the offending js line is:

//Reference
catalog = (new JSONRpcClient(../Catalog)).Catalog;

This is on jdk1.5.0_11 using the Tuscany 0.99 distribution.

Any suggestions on what may be wrone or how to resolve this
would be much appreciated.

Thanks, Steve.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
  

If I remember correctly, with Tuscany 0.99 we needed to write:

catalog = (new JSONRpcClient(../Catalog/)).Catalog;
instead of:

catalog = (new JSONRpcClient(../Catalog)).Catalog;


If you're still using 0.99 could you please try to change ../Catalog
to ../Catalog/?

Let me know if it helps. Thanks.



Adding a slash to the end ../Catalog and ../ShoppingCart in store.js 
fixes the problem - thanks.
  


Good :)

I used the Tuscany 0.99 as that is the one shown in the example.


The screen caps in getting-started-1.0.pdf are a little outdated, we 
need to refresh them to show 1.0 instead of 0.99 and Tomcat instead of 
Jetty.


If I 
switch libraries and use the Tuscany 1.0 distribution the example starts 
an instance of Tomcat 6.0.10 and not Jetty.
  


Yes the default changed from Jetty to Tomcat, but externally it should 
work the same way.


I get an error due to a missing style.css. I can fix this by creating a 
dummy css in ufservices/
  


The missing CSS file is now in the Tuscany trunk, but if you just ignore 
the message about the missing CSS, the sample should just work. Or are 
you seeing more errors?



If I then start the example again I get the following:

Starting ...
03-Oct-2007 10:27:01 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
03-Oct-2007 10:27:02 org.apache.catalina.startup.ContextConfig 
defaultWebConfig

INFO: No default web.xml
03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url 
for /javax/servlet/jsp/resources/web-jsptaglibrary_1_1.dtd

03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url 
for /javax/servlet/jsp/resources/web-jsptaglibrary_1_2.dtd

03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url 
for /javax/servlet/jsp/resources/web-jsptaglibrary_2_0.xsd

03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url 
for /javax/servlet/resources/j2ee_web_services_1_1.xsd

03-Oct-2007 10:27:03 org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
03-Oct-2007 10:27:03 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
03-Oct-2007 10:27:03 org.apache.tuscany.sca.http.tomcat.TomcatServer 
addServletMapping

INFO: Added Servlet mapping: http://localhost:8080/ufs/*
03-Oct-2007 10:27:03 org.apache.tuscany.sca.http.tomcat.TomcatServer 
addServletMapping

INFO: Added Servlet mapping: http://localhost:8080/Catalog
03-Oct-2007 10:27:03 org.apache.tuscany.sca.http.tomcat.TomcatServer 
addServletMapping

INFO: Added Servlet mapping: http://localhost:8080/SCADomain/scaDomain.js
03-Oct-2007 10:27:03 org.apache.tuscany.sca.http.tomcat.TomcatServer 
addServletMapping

INFO: Added Servlet mapping: http://localhost:8080/ShoppingCart/*
store.composite ready for big business !!!

Pointing firefox at:

 http://localhost:8080/ufs/store.html

I get the js error:

  uncaught exception: JSONRpcClientException:/Catalog/

The trailing slash makes no difference.

Should this example work with 1.0?
  


Yes, but without the trailing /.

To summarize:

- on 0.99, add a trailing /, as described in the 0.99 doc [1].

- on 1.0, no trailing / as shown in the 1.0 doc [2]. You will see a 
message about the missing CSS and can ignore it as it doesn't seem to 
break the sample logic.


Hope this helps.

[1] 
http://incubator.apache.org/tuscany/sca-java-099-incubating-release-summary.data/getting_started_Rest_099_07.pdf
[2] 
http://incubator.apache.org/tuscany/sca-java-10-incubating-release-summary.data/getting-started-1.0.pdf


--
Jean-Sebastien

Re: Online Store example - JSONRpcClientException

2007-10-03 Thread Jean-Sebastien Delfino

Steve Jones wrote:

On Wednesday 03 October 2007 19:18, Jean-Sebastien Delfino wrote:
  

Steve Jones wrote:


On Tuesday 02 October 2007 18:38, Jean-Sebastien Delfino wrote:
  

Steve Jones wrote:


Hi,

I'm having problems with the online store example:

http://incubator.apache.org/tuscany/sca-java-10-incubating-release-
su mmary.data/getting-started-1.0.pdf

The example builds and starts up OK and the console list the
correct servlet mapping.

When I point my browser at:

http://localhost:8080/ufs/store.html

The store page is displayed OK but the Apple,Orange,Pear rows and
check boxes are missing.

The firefox error console shows:

  Error: uncaught exception: JSONRpcClientException: Not Found

By inserting a few alerts in store.js the offending js line is:

//Reference
catalog = (new JSONRpcClient(../Catalog)).Catalog;

This is on jdk1.5.0_11 using the Tuscany 0.99 distribution.

Any suggestions on what may be wrone or how to resolve this
would be much appreciated.

Thanks, Steve.

---
-- To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
  

If I remember correctly, with Tuscany 0.99 we needed to write:

catalog = (new JSONRpcClient(../Catalog/)).Catalog;
instead of:

catalog = (new JSONRpcClient(../Catalog)).Catalog;


If you're still using 0.99 could you please try to change
../Catalog to ../Catalog/?

Let me know if it helps. Thanks.


Adding a slash to the end ../Catalog and ../ShoppingCart in
store.js fixes the problem - thanks.
  

Good :)



I used the Tuscany 0.99 as that is the one shown in the example.
  

The screen caps in getting-started-1.0.pdf are a little outdated, we
need to refresh them to show 1.0 instead of 0.99 and Tomcat instead of
Jetty.



If I
switch libraries and use the Tuscany 1.0 distribution the example
starts an instance of Tomcat 6.0.10 and not Jetty.
  

Yes the default changed from Jetty to Tomcat, but externally it should
work the same way.



I get an error due to a missing style.css. I can fix this by creating
a dummy css in ufservices/
  

The missing CSS file is now in the Tuscany trunk, but if you just
ignore the message about the missing CSS, the sample should just work.
Or are you seeing more errors?



If I then start the example again I get the following:

Starting ...
03-Oct-2007 10:27:01 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
03-Oct-2007 10:27:02 org.apache.catalina.startup.ContextConfig
defaultWebConfig
INFO: No default web.xml
03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory
register WARNING: Could not get url for
/javax/servlet/jsp/resources/jsp_2_0.xsd 03-Oct-2007 10:27:02
org.apache.catalina.startup.DigesterFactory register WARNING: Could
not get url
for /javax/servlet/jsp/resources/web-jsptaglibrary_1_1.dtd
03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory
register WARNING: Could not get url
for /javax/servlet/jsp/resources/web-jsptaglibrary_1_2.dtd
03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory
register WARNING: Could not get url
for /javax/servlet/jsp/resources/web-jsptaglibrary_2_0.xsd
03-Oct-2007 10:27:02 org.apache.catalina.startup.DigesterFactory
register WARNING: Could not get url
for /javax/servlet/resources/j2ee_web_services_1_1.xsd
03-Oct-2007 10:27:03 org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
03-Oct-2007 10:27:03 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
03-Oct-2007 10:27:03 org.apache.tuscany.sca.http.tomcat.TomcatServer
addServletMapping
INFO: Added Servlet mapping: http://localhost:8080/ufs/*
03-Oct-2007 10:27:03 org.apache.tuscany.sca.http.tomcat.TomcatServer
addServletMapping
INFO: Added Servlet mapping: http://localhost:8080/Catalog
03-Oct-2007 10:27:03 org.apache.tuscany.sca.http.tomcat.TomcatServer
addServletMapping
INFO: Added Servlet mapping:
http://localhost:8080/SCADomain/scaDomain.js 03-Oct-2007 10:27:03
org.apache.tuscany.sca.http.tomcat.TomcatServer addServletMapping
INFO: Added Servlet mapping: http://localhost:8080/ShoppingCart/*
store.composite ready for big business !!!

Pointing firefox at:

 http://localhost:8080/ufs/store.html

I get the js error:

  uncaught exception: JSONRpcClientException:/Catalog/

The trailing slash makes no difference.

Should this example work with 1.0?
  

Yes, but without the trailing /.

To summarize:

- on 0.99, add a trailing /, as described in the 0.99 doc [1].

- on 1.0, no trailing / as shown in the 1.0 doc [2]. You will see a
message about the missing CSS and can ignore it as it doesn't seem to
break the sample logic.

Hope this helps.

[1]
http://incubator.apache.org/tuscany/sca-java-099-incubating-release-sum
mary.data/getting_started_Rest_099_07.pdf [2]
http

Re: validation of composite file

2007-10-02 Thread Jean-Sebastien Delfino

[snip]
Florian Rosenberg wrote:

Jean-Sebastien Delfino wrote:
  

Mike Edwards wrote:


Florian,

I'd point out that the recommended way of doing things is to add
things in your own namespace.

Adding stuff to the OSOA XSDs is not encouraged.

If using your own namespace does not work, then we have some work to
do to fix that...

  

Mike,

+1, the other question is whether or not Florian's extension should be
in the Tuscany namespace.



we plan to contribute our stuff to Tuscany, as soon as we get permission
  , so I would rather stick to the Tuscany namespace.

  


Sounds good :)


My proposed rule of thumb for this:
- if an extension is included in the Tuscany distribution, it can be in
the Tuscany namespace, or a different namespace
- if an extension is not included in the Tuscany distribution, it should
be in a different namespace



Nevertheless, I'll try to use my own namespace and see if it works.

  


The following should work:
- package your XSD defining its own namespace in your extension, as 
described in [1].
- change tuscany-sca.xsd to include your XSD if it belongs to the 
Tuscany namespace


I have not tested if what I did in [1] will also allow you to contribute 
an XSD belonging to the Tuscany namespace without having to change 
tuscany-sca.xsd, but it may work as well :)


[1] http://marc.info/?l=tuscany-userm=119130076117107

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: validation of composite file

2007-10-01 Thread Jean-Sebastien Delfino

Mike Edwards wrote:

Florian,

I'd point out that the recommended way of doing things is to add 
things in your own namespace.


Adding stuff to the OSOA XSDs is not encouraged.

If using your own namespace does not work, then we have some work to 
do to fix that...




Mike,

+1, the other question is whether or not Florian's extension should be 
in the Tuscany namespace.


My proposed rule of thumb for this:
- if an extension is included in the Tuscany distribution, it can be in 
the Tuscany namespace, or a different namespace
- if an extension is not included in the Tuscany distribution, it should 
be in a different namespace




Yours,  Mike.

Jean-Sebastien Delfino wrote:

Florian Rosenberg wrote:

hi,

I have my compoent type implementation and provided an XSD to use XML
validation. Are there any specific steps I have to do. I'm currently 
using

the version 1.0 binaries and I don't really where to put  my XSD file.
I checked the code and found the tuscany-assembly-xsd project, where I
added my XSD to the tuscany-sca.xsd to check if it is working. All the
validation errors on the console go away, nevertheless it does not 
really
report an error if for example a mandatory attribute is missing in 
my XML

tags.

Could someone give us a brief description how the resolving works 
and how
to enable it if I work with the Tuscany binary distribution and do 
not want

to rebuild the tuscany-assembly-xsd to get it to work.

Thanks,
-Florian



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  


The runtime currently loads:
tuscany-assembly-xsd/src/main/resources/tuscany-sca-include.xsd - 
defining the SCA namespace http://www.osoa.org/xmlns/sca/1.0
tuscany-assembly-xsd/src/main/resources/tuscany-sca.xsd - defining 
the Tuscany namespace http://tuscany.apache.org/xmlns/sca/1.0


If you want to add your extension schema to the 
http://tuscany.apache.org/xmlns/sca/1.0 namespace you need to include 
it in tuscany-sca.xsd, and rebuild that module. This is not dynamic, 
but it's intentional as we need to provide application developers 
with a single central XSD file completely defining that namespace 
anyway... as this is what most XML schema validation tools and 
editors out there expect.


If you want to define your extension schema in a different namespace, 
you can either:


- Try to add the following to your composite element:
composite ...
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation=yourNamespace locationOfyourXSDFile
... not great but it should work.

- Or just package the XSD file defining that namespace in your 
extension JAR and I'll add a few lines of code to look for and 
automatically load extension XSDs in extension JARs. I will post 
again here when it's ready for you to try.




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: validation of composite file

2007-10-01 Thread Jean-Sebastien Delfino

Florian Rosenberg wrote:

hi jean sebastien,

Jean-Sebastien Delfino [EMAIL PROTECTED] wrote on 09/27/2007 10:39:21
PM:
  

Florian Rosenberg wrote:


hi,

I have my compoent type implementation and provided an XSD to use XML
validation. Are there any specific steps I have to do. I'm currently
  

using
  

the version 1.0 binaries and I don't really where to put  my XSD file.
I checked the code and found the tuscany-assembly-xsd project, where I
added my XSD to the tuscany-sca.xsd to check if it is working. All the
validation errors on the console go away, nevertheless it does not
  

really
  

report an error if for example a mandatory attribute is missing in my
  

XML
  

tags.

Could someone give us a brief description how the resolving works and
  

how
  

to enable it if I work with the Tuscany binary distribution and do not
  

want
  

to rebuild the tuscany-assembly-xsd to get it to work.

Thanks,
-Florian
  

The runtime currently loads:
tuscany-assembly-xsd/src/main/resources/tuscany-sca-include.xsd -
defining the SCA namespace http://www.osoa.org/xmlns/sca/1.0
tuscany-assembly-xsd/src/main/resources/tuscany-sca.xsd - defining the
Tuscany namespace http://tuscany.apache.org/xmlns/sca/1.0

If you want to add your extension schema to the
http://tuscany.apache.org/xmlns/sca/1.0 namespace you need to include it
in tuscany-sca.xsd, and rebuild that module. This is not dynamic, but
it's intentional as we need to provide application developers with a
single central XSD file completely defining that namespace anyway... as
this is what most XML schema validation tools and editors out there


expect.

That is exactly what I did but for my case it does not seem to work, there
is no XML validation, at least I don't get any error even if I omit
required attributes etc. have to investigate what could be the reason. Even
though, the validation does not seem to work for me, e.g.:

service name=AddPostSpliceService
 promote=AddPostSpliceComponent
  interface.java
  interfaceERROR=com.ibm.sca.implementation.splice.SpliceService /
/service
component name=AddPostSpliceComponent
  tuscany:implementation.splice flow=tns:AddPost
  contentType=application/x-www-form-urlencoded /
/component

The interface attribute is wrong here but Tuscany throw the following error
instead of giving me a validation error:


org.osoa.sca.ServiceRuntimeException: org.osoa.sca.ServiceRuntimeException:
org.apache.tuscany.sca.core.assembly.ActivationException:
java.lang.NullPointerException
  at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance
(SCADomain.java:264)
  at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance
(SCADomain.java:69)
  at com.ibm.sca.implementation.splice.SpliceImplementationTest.setUp
(SpliceImplementationTest.java:34)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
  at java.lang.reflect.Method.invoke(Method.java:585)
  at org.junit.internal.runners.BeforeAndAfterRunner.invokeMethod
(BeforeAndAfterRunner.java:74)
  at org.junit.internal.runners.BeforeAndAfterRunner.runBefores
(BeforeAndAfterRunner.java:50)
  at org.junit.internal.runners.BeforeAndAfterRunner.runProtected
(BeforeAndAfterRunner.java:33)
  at org.junit.internal.runners.TestMethodRunner.runMethod
(TestMethodRunner.java:75)
  at org.junit.internal.runners.TestMethodRunner.run
(TestMethodRunner.java:45)
  at org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod
(TestClassMethodsRunner.java:66)
  at org.junit.internal.runners.TestClassMethodsRunner.run
(TestClassMethodsRunner.java:35)
  at org.junit.internal.runners.TestClassRunner$1.runUnprotected
(TestClassRunner.java:42))
  at org.junit.internal.runners.BeforeAndAfterRunner.runProtected
(BeforeAndAfterRunner.java:34)
  at org.junit.internal.runners.TestClassRunner.run
(TestClassRunner.java:52)
  at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run
(JUnit4TestReference.java:38)
  at org.eclipse.jdt.internal.junit.runner.TestExecution.run
(TestExecution.java:38)
  at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests
(RemoteTestRunner.java:460))
  at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests
(RemoteTestRunner.java:673))
  at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run
(RemoteTestRunner.java:386):
  at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main
(RemoteTestRunner.java:196)
Caused by: org.osoa.sca.ServiceRuntimeException:
org.apache.tuscany.sca.core.assembly.ActivationException:
java.lang.NullPointerException
  at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init
(DefaultSCADomain.java:180

Re: validation of composite file

2007-09-28 Thread Jean-Sebastien Delfino

[snip]
Florian Rosenberg wrote:


That is exactly what I did but for my case it does not seem to work, there
is no XML validation, at least I don't get any error even if I omit
required attributes etc. have to investigate what could be the reason. Even
though, the validation does not seem to work for me, e.g.:

service name=AddPostSpliceService
 promote=AddPostSpliceComponent
  interface.java
  interfaceERROR=com.ibm.sca.implementation.splice.SpliceService /
/service
component name=AddPostSpliceComponent
  tuscany:implementation.splice flow=tns:AddPost
  contentType=application/x-www-form-urlencoded /
/component

The interface attribute is wrong here but Tuscany throw the following error
instead of giving me a validation error:

  


Are you seeing this problem only after adding your schema to 
tuscany-sca.xsd? or already with the unchanged tuscany-sca.xsd?


If you're seeing the problem with the unchanged tuscany-sca.xsd, which 
revision of the trunk or 1.0 branch are you using?


I just tried to add the following to the sample-calculator 
Calculator.composite:

   service name=CalculatorService promote=CalculatorServiceComponent
   interface.java interfaceERROR=calculator.CalculatorService/
   /service
  
and when I run it I see:
WARNING: XMLSchema validation problem in: 
file:/home/delfinoj/Tuscany/apache-repos/java/sca/samples/calculator/target/classes/Calculator.composite, 
line: 26, column: 3
cvc-complex-type.4: Attribute 'interface' must appear on element 
'interface.java'.


The XMLschema validator will not complain about the interfaceERROR 
attribute as the schema allows for anyAttribute. However it seems to 
correctly report the missing interface attribute.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: What happened to mustSupply?

2007-09-28 Thread Jean-Sebastien Delfino

Matthew Peters wrote:
p. 26 of the 1.00 Assembly Spec describes a mustSupply attribute on a 
property inside a composite, used to mean that there is no default 
value and a value must be supplied by the component that uses the 
implementation. I don't see this attribute in the sca-core.xsd from the 
1.0 Tuscany or any discussion of it on the mailing lists. Has the 
attribute gone for good, and has the concept gone as well?


I am assuming that the noDefault attribute (used to be required) is for 
use just within a component type but perhaps that's wrong. 


Matthew Peters

  


The mustSupply attribute described in the assembly spec is implemented 
by the Tuscany assembly model, XML readers and writers.


The SCA XSD says:
attribute name=noDefault type=boolean default=false use=optional/
instead of
attribute name=mustSupply type=boolean default=false use=optional/

IMO this is a bug in the XSD, I'll report the issue to the OASIS 
assembly TC.


In the meantime, you can try to specify that mustSupply attribute 
anyway. It should work in Tuscany and XMLSchema validation shouldn't 
complain about it as the XSD for property allows for anyAttribute 
namespace=##any processContents=lax/.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: websphere web service deployment problem

2007-09-28 Thread Jean-Sebastien Delfino

Radim Kolarik wrote:

Hi,

just wanted you to know that I have managed to solve the problem now.
It was all about other files, which were on our classpath and which
were not supposed to be there (our product jars). That caused
classloader to load classes where they were not supposed to be loaded.

The problem doesn't appear anymore.

Thanks,
Radim
  


That's good news, as I was not able to reproduce the issue in my 
environment... I had tweaked a test case to do a new InitialContext() 
similar to what I saw in your stack trace, and it was working for me :)


Thanks

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: websphere web service deployment problem

2007-09-27 Thread Jean-Sebastien Delfino

Radim Kolarik wrote:

Hi,

We are experiencing a problem on Websphere 6.1.0.11 with Tuscany 1.0.
When we set all classloader properties, as mentioned before,


I'm assuming that you mean: change classloader properties of your Webapp 
to parent-last / single, correct?



we are
getting the following exception when we try to call Websphere's
AdminService.getAttribute:

Stack Dump = java.lang.ClassCastException:
org.apache.xerces.jaxp.SAXParserFactoryImpl incompatible with
javax.xml.parsers.SAXParserFactory
at javax.xml.parsers.SAXParserFactory.newInstance(Unknown Source)
at 
org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.makeParser(XMLLoadImpl.java:299)
at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java:140)
at 
org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.doLoad(XMLResourceImpl.java:179)
at 
org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResourceImpl.basicDoLoad(CompatibilityXMIResourceImpl.java:180)
at 
org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResourceImpl.doLoad(CompatibilityXMIResourceImpl.java:173)
at 
org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1094)
at 
org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:900)
at 
org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResourceImpl.load(CompatibilityXMIResourceImpl.java:259)
at 
com.ibm.websphere.resource.WASResourceImpl.load(WASResourceImpl.java:61)
at 
org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:249)
at 
org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:264)
at 
org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:390)
at 
com.ibm.websphere.resource.WASResourceSetImpl.getResource(WASResourceSetImpl.java:158)
at 
com.ibm.websphere.resource.WASResourceSetImpl.getResource(WASResourceSetImpl.java:143)
at 
com.ibm.ws.runtime.service.ConfigRootImpl.getResource(ConfigRootImpl.java:325)
at 
com.ibm.ws.runtime.service.ConfigRootImpl.getResource(ConfigRootImpl.java:298)
at 
com.ibm.ws.runtime.service.ConfigRootImpl.getResource(ConfigRootImpl.java:274)
at 
com.ibm.ws.runtime.component.EndPointMgrImpl.getNodeHostName(EndPointMgrImpl.java:488)
at 
com.ibm.ws.management.AdminHelperImpl.getNodeHostName(AdminHelperImpl.java:116)
at 
com.ibm.ws.management.component.JVMMBean.getJVMNode(JVMMBean.java:167)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:62)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:265)
at 
javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1089)
at 
javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:971)
at 
javax.management.modelmbean.RequiredModelMBean.getAttribute(RequiredModelMBean.java:1373)
at 
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.getAttribute(DynamicMetaDataImpl.java:114)
at 
com.sun.jmx.mbeanserver.MetaDataImpl.getAttribute(MetaDataImpl.java:199)
at 
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(DefaultMBeanServerInterceptor.java:656)
at 
com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(JmxMBeanServer.java:677)
at 
com.ibm.ws.management.AdminServiceImpl.getAttribute(AdminServiceImpl.java:687)
at com.company.websphere.WebSphereServerHelper.initialise(Unknown 
Source)
   .

It is really strange, because
org.apache.xerces.jaxp.SAXParserFactoryImpl is derived from
SAXParserFactory as far as I know.
  


Can you give me a little more context?

Are you calling AdminService.getAttribute() from your Webapp or are you 
running into this issue when starting the server, independent of the Webapp?


Can you show me the complete stack trace from the log or the FFDC 
created when you get the exception... usually the answer to all stack 
traces lies in the  part :)



Does anybody have an idea what could be causing the problem?
  


Probably but it'll depend on your answer to my above questions :)


Thanks,
Radim

  

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]

Re: adding rubygem as dependency in ruby file

2007-09-27 Thread Jean-Sebastien Delfino

Susanta Datta wrote:

Hi, my composite has a ruby implementation. In my Ruby file I require rubygems and some other 
ruby files. How do I set those folder and files in my sca java project ? I tried with calculator script 
in eclipse IDE. I works fine but if I add new a require rubygems in the .rb file I get an 
error unknown:19: no such file to load -- rubygems (LoadError).

Any idea where and how do I configure Ruby dependencies in the java sca project 
under eclipse?

thanks a lot 
Susanta
  


I am looking into this. To test what happens with require statements I 
changed one of our scripting samples:

http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/calculator-script/src/main/resources/calculator/SubtractServiceImpl.rb

and added a require as follows:
require 'rexml/document'
include REXML

def subtract(n1, n2)
   doc = Document.new -eof
 Hello xmlns=http://test;
   nameFoo/name
 /Hello
   eof
   print doc
   return n1 - n2
end

and it works, I'm getting:
Hello xmlns='http://test'
 nameFoo/name
/Hello
3 - 2=1.0

REXML is part of the jruby distribution. Next, I'm going to try to 
require another .rb file in the same project and will let u know what I 
find.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: adding rubygem as dependency in ruby file

2007-09-27 Thread Jean-Sebastien Delfino

Jean-Sebastien Delfino wrote:

Susanta Datta wrote:
Hi, my composite has a ruby implementation. In my Ruby file I require 
rubygems and some other ruby files. How do I set those folder and 
files in my sca java project ? I tried with calculator script in 
eclipse IDE. I works fine but if I add new a require rubygems in 
the .rb file I get an error unknown:19: no such file to load -- 
rubygems (LoadError).


Any idea where and how do I configure Ruby dependencies in the java 
sca project under eclipse?


thanks a lot Susanta
  


I am looking into this. To test what happens with require statements 
I changed one of our scripting samples:
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/calculator-script/src/main/resources/calculator/SubtractServiceImpl.rb 



and added a require as follows:
require 'rexml/document'
include REXML

def subtract(n1, n2)
   doc = Document.new -eof
 Hello xmlns=http://test;
   nameFoo/name
 /Hello
   eof
   print doc
   return n1 - n2
end

and it works, I'm getting:
Hello xmlns='http://test'
 nameFoo/name
/Hello
3 - 2=1.0

REXML is part of the jruby distribution. Next, I'm going to try to 
require another .rb file in the same project and will let u know what 
I find.




I made a small change to our JRuby integration code to add the path to 
the rubygems hiding inside jruby-complete-1.0.jar to the Jruby loadpath. 
I also made a small change to improve the Exception reporting, you 
should now see the JRuby exception messages.


The changes are available in SVN revision r580145 of the Tuscany trunk, see:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-script/src/main/java/org/apache/tuscany/sca/implementation/script/engines/TuscanyJRubyScriptEngine.java?view=diffr1=580144r2=580145pathrev=580145

This should allow you to require 'rubygems'.

You may also have to configure your environment as described in the 
JRuby Gotchas section there:

http://www.headius.com/jrubywiki/index.php/Java_Integration#Embedding_with_Bean_Scripting_Framework

Why gems are you using? Any Rails by any chance? I think it would be 
really cool to show Rails working with SCA...


Hope this helps.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: adding rubygem as dependency in ruby file

2007-09-27 Thread Jean-Sebastien Delfino

Susanta Datta wrote:
Jean, Thanks a lot. I'm writing a meshup sample using SCA. Here I'm 
using one composite written in Ruby which requires rubygem.


regards
Susanta


Cool!

I did a little more testing, as I really wanted to see a Ruby gem in 
action before declaring victory. Here's what I did:


I installed JRuby 1.0.1.

From the command line, ran jirb gem install progressbar, the 
progressbar Gem got installed under jruby-install/lib/ruby/gems


I copied jruby-install/lib/ruby/gems to $HOME/.jruby/lib/ruby/gems. 
I'm running Linux, on Windows the .jruby home directory is probably 
somewhere under Documents And Settings.


I changed SubtractServiceImpl.rb in the Tuscany calculator-script sample 
as follows:

require 'rubygems'
require 'progressbar'

def subtract(n1, n2)

   bar = ProgressBar.new(Example progress, 50)
   total = 0
   until total = 50
 sleep(rand(2)/2.0)
 increment = (rand(6) + 3)
 bar.inc(increment)
 total += increment
   end
   print \n

   return n1 - n2
end

Ran the calculator sample and saw:
Example progr:  14% |o   | ETA:  
00:00:00
Example progr:  20% || ETA:  
00:00:02
Example progr:  36% |oo  | ETA:  
00:00:01
Example progr:  48% |ooo | ETA:  
00:00:01
Example progr:  64% |o   | ETA:  
00:00:00
Example progr:  80% || ETA:  
00:00:00
Example progr:  96% |oo  | ETA:  
00:00:00
Example progr: 100% || ETA:  
00:00:00

3 - 2=1.0

So I can confirm that Ruby Gems should work if you follow similar steps.

Let me know how it goes... Thanks.

- Original Message - From: Jean-Sebastien Delfino 
[EMAIL PROTECTED]

To: tuscany-user@ws.apache.org
Sent: Thursday, September 27, 2007 4:44 PM
Subject: Re: adding rubygem as dependency in ruby file



Jean-Sebastien Delfino wrote:

Susanta Datta wrote:
Hi, my composite has a ruby implementation. In my Ruby file I 
require rubygems and some other ruby files. How do I set those 
folder and files in my sca java project ? I tried with calculator 
script in eclipse IDE. I works fine but if I add new a require 
rubygems in the .rb file I get an error unknown:19: no such file 
to load -- rubygems (LoadError).


Any idea where and how do I configure Ruby dependencies in the java 
sca project under eclipse?


thanks a lot Susanta



I am looking into this. To test what happens with require 
statements I changed one of our scripting samples:
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/calculator-script/src/main/resources/calculator/SubtractServiceImpl.rb 



and added a require as follows:
require 'rexml/document'
include REXML

def subtract(n1, n2)
   doc = Document.new -eof
 Hello xmlns=http://test;
   nameFoo/name
 /Hello
   eof
   print doc
   return n1 - n2
end

and it works, I'm getting:
Hello xmlns='http://test'
 nameFoo/name
/Hello
3 - 2=1.0

REXML is part of the jruby distribution. Next, I'm going to try to 
require another .rb file in the same project and will let u know 
what I find.




I made a small change to our JRuby integration code to add the path 
to the rubygems hiding inside jruby-complete-1.0.jar to the Jruby 
loadpath. I also made a small change to improve the Exception 
reporting, you should now see the JRuby exception messages.


The changes are available in SVN revision r580145 of the Tuscany 
trunk, see:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-script/src/main/java/org/apache/tuscany/sca/implementation/script/engines/TuscanyJRubyScriptEngine.java?view=diffr1=580144r2=580145pathrev=580145 



This should allow you to require 'rubygems'.

You may also have to configure your environment as described in the 
JRuby Gotchas section there:
http://www.headius.com/jrubywiki/index.php/Java_Integration#Embedding_with_Bean_Scripting_Framework 



Why gems are you using? Any Rails by any chance? I think it would be 
really cool to show Rails working with SCA...


Hope this helps.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: validation of composite file

2007-09-27 Thread Jean-Sebastien Delfino

Florian Rosenberg wrote:

hi,

I have my compoent type implementation and provided an XSD to use XML
validation. Are there any specific steps I have to do. I'm currently using
the version 1.0 binaries and I don't really where to put  my XSD file.
I checked the code and found the tuscany-assembly-xsd project, where I
added my XSD to the tuscany-sca.xsd to check if it is working. All the
validation errors on the console go away, nevertheless it does not really
report an error if for example a mandatory attribute is missing in my XML
tags.

Could someone give us a brief description how the resolving works and how
to enable it if I work with the Tuscany binary distribution and do not want
to rebuild the tuscany-assembly-xsd to get it to work.

Thanks,
-Florian



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  


The runtime currently loads:
tuscany-assembly-xsd/src/main/resources/tuscany-sca-include.xsd - 
defining the SCA namespace http://www.osoa.org/xmlns/sca/1.0
tuscany-assembly-xsd/src/main/resources/tuscany-sca.xsd - defining the 
Tuscany namespace http://tuscany.apache.org/xmlns/sca/1.0


If you want to add your extension schema to the 
http://tuscany.apache.org/xmlns/sca/1.0 namespace you need to include it 
in tuscany-sca.xsd, and rebuild that module. This is not dynamic, but 
it's intentional as we need to provide application developers with a 
single central XSD file completely defining that namespace anyway... as 
this is what most XML schema validation tools and editors out there expect.


If you want to define your extension schema in a different namespace, 
you can either:


- Try to add the following to your composite element:
composite ...
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation=yourNamespace locationOfyourXSDFile
... not great but it should work.

- Or just package the XSD file defining that namespace in your extension 
JAR and I'll add a few lines of code to look for and automatically load 
extension XSDs in extension JARs. I will post again here when it's ready 
for you to try.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Splice component declaration and componentType, was: retrieve name of component in artifact processor

2007-09-25 Thread Jean-Sebastien Delfino

Florian Rosenberg wrote:

hi raymond,

On Sun, September 23, 2007 2:31 pm, Raymond Feng wrote:
  

Hi, Florian.

Can you elaborate a bit on why you need the component name during the
read/resolve phase for your implementation.splice? If such information
is
needed for the runtime behavior, then
org.apache.tuscany.sca.provider.ImplementationProviderFactory.createImplementationProvider(...)
will pass in the component and implementation objects.



the reason I've asked was my missinterpretation of componentType, I
thought it describes a whole component instance (as Mike said
implementation info is the better name IMHO) no only the implementation. I
wanted to name the component type file exactly as specified in the name
attribute of the component tag in the composite file. That was basically
the origin of my question.

I'll go along with the suggestions that Mike provided for now. In the end
I want to resolve the componentType automatically from the Splice flow
anyway  but I want a constistent way to do it for now. I checked some
existing examples in Tuscany and could not figure out a way to name them
consistently, some componentType names are the same as the composite file
name, some have the name of the component type. The spec says the name of
the componentType file and the composite file should match (if I remember
correctly)/

Thanks,
-Florian

  

- Original Message -
From: Florian Rosenberg [EMAIL PROTECTED]
To: tuscany-user@ws.apache.org
Sent: Saturday, September 22, 2007 9:23 PM
Subject: retrieve name of component in artifact processor




folks,

I'm writing a component impl type and in my artifact processor I would
need
the name attribute from a component defined in the composite file to be
able to use a constistant  resolving mechanism for my componentType
files
that describe the component.

Example:
component name=FooComponent
 tuscany:implementation.splice baseDir:=src/test/resources/flowdir/
path=echo url=echo contentType=text/plain /
 reference name=... /
/component

Is there a way to get that name (FooComponent) in the read() or
resolve()
method of the StAXArtifactProcessor implementation reading the
implementation.splice attribute? The FooComponent.componentType is then
used to describe the component, its references, etc.

I could not figure out a way to retrieve it, probably I missed
something.

Thanks,
-Florian


  


A few thoughts, hoping they'll help the discussion...

As an SCA app developer, I'll need a simple way to point to my component 
implementation artifact, because it's what I'm going to reuse in many 
components. Having a single or main file for the implementation works 
best because people can move it, copy it, edit it by double-clicking on it.


Once I have clearly identified that implementation file, defining the 
.componentType is easy... same path as the implementation artifact with 
a .componentType extension.


The .componentType does not describe a component, it describes an 
implementation, in other words a class of components.


In the splice case, how about saying:

- The implementation artifact is myFlowdir/echo.splice for example.

- The SCA artifact that describes my implementation (if needed) is 
myFlowdir/echo.componentType.


- I'm guessing that echo.splice is an XML file, with a targetNamespace 
and name, usually to keep things simple I'll want the XML name to match 
the file name:

splice targetNamespace=http://myns; name=echo
 .. splice stuff
/splice

- To create a component implemented by myFlowdir/echo.splice I could write:

(a)
component name=MyEchoComponent
 implementation.splice flow=myFlowDir/echo.splice/
/component

or (b)
composite ... xmlns:myns=http://myns;
...
component name=MyEchoComponent
 implementation.splice flow=myns:echo/
/component

In the rest of SCA assembly we've adopted (b) the more XML oriented 
syntax, as pointing to locations tends to be fragile when you move 
things around, and also fits well with the SCA contribution packaging 
model and the ability to import XML namespaces from other contributions.


Thoughts?

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: How to get more detailed exception information from a Spring implementation?

2007-09-25 Thread Jean-Sebastien Delfino

Sun Yang wrote:

Hi, Raymond:

Thanks for your confirmation. I will do that when I back to work tomorrow.

Regards,
Yang Sun


  


If you want you can also submit a small patch in the JIRA, looks like 
it's just a matter of changing the SpringInvocationException(String msg) 
constructor to SpringInvocationException(Exception cause) and use that 
new constructor in a few places in SpringInvoker :)


If you try that and it works for you it'll be easy to get that fix in.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: websphere web service deployment problem

2007-09-20 Thread Jean-Sebastien Delfino

Radim Kolarik wrote:

Hi Sebastien,

I can confirm that you are right, that was the problem. I would swear
I saw many examples that had the implementation element as last one in
the composite file ;-).

Thanks again,
Radim

  


Yeah I had to fix them all for the 1.0 release :) I guess it shows that 
this automatic validation is useful.


I'm going to put together a small Eclipse plugin that will register the 
same XMLSchemas in the Eclipse WTP XML catalog. It'll help people edit 
correct .composite and .componentType files using the Eclipse XML editor 
and validate them in their IDE.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: websphere web service deployment problem

2007-09-19 Thread Jean-Sebastien Delfino

Radim Kolarik wrote:

Hi Simon,

unfortunatelly I am seeing the same problem on WAS 6.1.0.9.

Sebastien, do you still have the WAS environment? Could you try to
deploy RC3 based example web service on it?

Thanks a lot,
Radim

  


It works for me.

I need more precise information to be able to help.

- which web service based sample? helloworld? calculator? built 
yourself? using mvn or ant?
- the steps you are following to install and run the sample and the 
exact output you are getting when you run it
- whether or not you have configured the WAR classloader parent last 
and single classloader
- whether or not you have configured the custom Web container property 
as described in the WebSphere fixpack at [1]

- the time of the error
- your SystemOut.log and SystemError.log files
- the FFDC files created in yout logs directory at the time of the error

Could you please put that information in a JIRA. I'm watching the JIRA 
notifications so I'll get notified when you do so, and will investigate 
quickly. Thanks.


[1] http://www-1.ibm.com/support/docview.wss?uid=swg24014758

Thanks.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: websphere web service deployment problem

2007-09-14 Thread Jean-Sebastien Delfino

Jean-Sebastien Delfino wrote:

Radim Kolarik wrote:

Hi Sebastian,

I received the latest code from ant and I can confirm that the service
generates the WSDL file now. The binding.ws/ element doesn't even
need uri attribute, it works without any attributes!

However, there is still some problem, the generated WSDL contains

Error 404: SRVE0190E: File not found: /ComponentName

at it's end, right after the /wsdl:definitions. I have created a
JIRA for this: https://issues.apache.org/jira/browse/TUSCANY-1702.

Are you seeing the same problem?

Best regards,
Radim

  


I just checked and am seeing this issue too (I had just not noticed 
that additional line at the end of the WSDL). However, the Web Service 
binding actually works for me on both references and services so if 
you manage to workaround that additional line at the end of the 
generated WSDL it should work for you too.


I think it's another of these small behavior differences. On WebSphere 
we probably need to force a close of the response outputStream before 
returning from the servlet filter. I'm experimenting with that right 
now and will give an update soon...




Radim, after a fun debugging session and some digging around here's an 
update:


- The issue you're seeing is the same as [1].

- This is a WebSphere 6.1 bug, a fix is available at [2].

I'm going to try some of the workarounds suggested in [1] and see if 
they work for Tuscany. It would be good if you could also try the 
WebSphere fix [2] as well if possible.


[1] https://issues.apache.org/struts/browse/WW-1839
[2] http://www-1.ibm.com/support/docview.wss?uid=swg24014758

Hope this helps.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Tuscany 1.0 RC1 / WebSphere 6.1.0.9, was: websphere web service deployment problem

2007-09-14 Thread Jean-Sebastien Delfino

Jean-Sebastien Delfino wrote:

Jean-Sebastien Delfino wrote:

Jean-Sebastien Delfino wrote:

Radim Kolarik wrote:

Hi Sebastian,

I received the latest code from ant and I can confirm that the service
generates the WSDL file now. The binding.ws/ element doesn't even
need uri attribute, it works without any attributes!

However, there is still some problem, the generated WSDL contains

Error 404: SRVE0190E: File not found: /ComponentName

at it's end, right after the /wsdl:definitions. I have created a
JIRA for this: https://issues.apache.org/jira/browse/TUSCANY-1702.

Are you seeing the same problem?

Best regards,
Radim

  


I just checked and am seeing this issue too (I had just not noticed 
that additional line at the end of the WSDL). However, the Web 
Service binding actually works for me on both references and 
services so if you manage to workaround that additional line at the 
end of the generated WSDL it should work for you too.


I think it's another of these small behavior differences. On 
WebSphere we probably need to force a close of the response 
outputStream before returning from the servlet filter. I'm 
experimenting with that right now and will give an update soon...




Radim, after a fun debugging session and some digging around here's 
an update:


- The issue you're seeing is the same as [1].

- This is a WebSphere 6.1 bug, a fix is available at [2].

I'm going to try some of the workarounds suggested in [1] and see if 
they work for Tuscany. It would be good if you could also try the 
WebSphere fix [2] as well if possible.


[1] https://issues.apache.org/struts/browse/WW-1839
[2] http://www-1.ibm.com/support/docview.wss?uid=swg24014758

Hope this helps.



Radim,

It doesn't look like I can workaround this WebSphere bug in the 
Tuscany code. Your best bet is to install the fix at [2].


Could you please let us know the results after you do that? Thanks.



You can also try WebSphere 6.1 Fixpack 9 [3] and add a 
com.ibm.ws.webcontainer.invokefilterscompatibility=true Web Container 
customer property as described in [2]. Tuscany 1.0 RC1 seems to work 
fine in that configuration.


[3] http://www-1.ibm.com/support/docview.wss?rs=180uid=swg24015777

--

Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Resolving an calling the target of a reference

2007-09-11 Thread Jean-Sebastien Delfino

Florian Rosenberg wrote:

hi,

we have created a component implementation for a small RESTful composition
language which does not support references to other components, now we want
to add support for that. The component implementation is similar to BPEL,
but without all the WSDL and partnerlink stuff. Just support for REST and
custom activities to extend the language.

An example of using it in the composite file is:
component name=FeedsAggregatorComponent
implementation.splice
baseDir=src/main/resources/flowdir/
path=feeds url=getFeeds
contentType=text/xml /
reference name=aggregate target=AggregateServiceComponent /

/component
!-- other stuff goes here --


I need to tell our Splice engine where the references are and how it can
resolve it. The problem is that from the Reference instance, I cannot
retrieve an invoker instance to invoke my target as specified in the
reference / tag. AFAIK, i need a binding and an operation instance to get
an Invoker instance. The binidng is not a problem is can be retrieved from
the reference instance. Furthermore, I need an operation instance; the name
of the operation corresponds to some value in the process definition that I
know.

To get the operations i need the interface and thus its interface contract
first. When I do a
InterfaceContract contract = _reference.getTargets().get
(0).getInterfaceContract();

  


getTargets().get(0).getInterfaceContract() returns the interface on the 
service that the reference is wired to.


From the component you pasted above I'm guessing that it must be a 
service on the AggregateServiceComponent, and I'm also guessing that 
it's the only service on that component since you didn't specify a 
service name in the reference target attribute.


Can you post the XML describing AggregateServiceComponent?

Another comment is that you shouldn't rely on the interface of the 
target service (as there may be no target service if your reference is 
configured to talk to an external endpoint with a binding instead of 
being wired with a target attribute) to determine the interface that 
should be used on the reference.


More below on this subject, and how you can type your reference with an 
interface contract.



it is always null, so I cannot get the interface and iterate over its
operations to find a matching one. If I would have the operation I could
establish a binding.

Invoker invoker = _reference.getInvoker(bindings.get(0), referencedOp);
Message request = _messageFactory.createMessage();
// here the Splice engine can call the reference

I do the whole stuff in the implementation provider class (where I also
configure the engine).

Any help and pointers are highly appreciated. I'm stuck with that for a
couple of times now. By the way, this message occurs in the logs, but I'm
not really sure if it is the source of my problem:
WARNING: [WARNING] Reference not found for component reference:
FeedsAggregatorComponent/aggregate null
  


You're seeing this because you declared a ComponentReference declaration 
named aggregate on your Component and we couldn't find a Reference 
definition named aggregate on the ComponentType describing your 
Component. We'll have to make that error message more clear :)


Here's more background on the relationship between a ComponentReference 
and a Reference and a Component and a ComponentType:


- A Component (component) is an instance of a ComponentType 
(componentType). Basically you can have multiple components of the 
same type, configured differently, with different wiring, bindings or 
property configuration for example.


- A ComponentType is typically reflected from an Implementation. For 
example we can introspect a Java implementation class, or a BPEL process 
implementation and derive a ComponentType from it, describing the 
characteristics of the implementation. In the Tuscany SCA assembly 
model, Implementation extends ComponentType.


- If you don't want to derive the ComponentType from the Implementation, 
you can also just write by hand an XML file, .componentType, describing it.


- In both cases, the ComponentType lists the Properties supported by the 
type, the Services and References supported by the type and their 
InterfaceContracts (Interface and callback Interface).


- A component element declares a Component. The Component will have an 
ComponentReference for each Reference on its ComponentType, a 
ComponentService for each Service on the ComponentType, a 
ComponentProperty for each Property on the ComponentType.


An analogy with Java may help describe these:
Component == an Object with field declarations and the ability to set 
values in the fields.

Implementation == a concrete Class that can be instantiated into Objects.
ComponentType == an abstract Class defining the field and its type and 
default value.


So, to summarize:

- The message you're getting complains that you're trying to configure 
ComponentReference 

Re: SCA Specifications starting up in OASIS

2007-09-07 Thread Jean-Sebastien Delfino

Mike Edwards wrote:

Folks,

The SCA specifications which are implemented by Tuscany have just 
started out a new phase - they are moving to OASIS for formal 
standardization.  This is being done as a series of OASIS technical 
committees, each dealing with one or more of the SCA specifications.


The OASIS activities are carried out in public and it is possible to 
either observe activities in the various technical committees, or you 
are welcome to join one or more of the committees.


You can find the 6 SCA technical committees here:

http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=sca-assembly
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=sca-policy
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=sca-bindings
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=sca-j
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=sca-c-cpp
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=sca-bpel

Meeting minutes, documents, issues and so on are linked from the main 
page.


Mailing list archives can be found here:

http://www.oasis-open.org/archives/sca-assembly/
http://www.oasis-open.org/archives/sca-policy/
http://www.oasis-open.org/archives/sca-bindings/
http://www.oasis-open.org/archives/sca-j/
http://www.oasis-open.org/archives/sca-c-cpp/
http://www.oasis-open.org/archives/sca-bpel/


Please note that there is an SCA Plenary session taking place on
Tuesday 18th September in Palo Alto, CA.  This session is an education 
session about SCA and the work that will take place within OASIS over 
the next year or so.  This session is free and open to anyone who 
registers for the session.  For more details, please look here:


http://www.oasis-opencsa.org/2007-09-18-program


Yours,  Mike Edwards.
Co-Chair, OASIS SCA Assembly TC.



Great! Thanks Mike. What do people think about adding these links to a 
page on the Tuscany web site, linked from our Getting Involved page?


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Policy samples? (showcasing the killer feature of separation of concerns)

2007-09-05 Thread Jean-Sebastien Delfino

Two comments inline.

Venkata Krishnan wrote:

Hi,

The policy framework implementation is underway.  We have some basic things
in place which allows the inclusion of policy intents and policysets into an
assembly model.  There is simply sample policy that we have put in place
along with the echo-binding-extension sample to test this basic framework.
This is a part of the recent 0.99 release.

We shall be very soon adding support for some security policies with our ws
bindings.  So you must soon be able to see the basic authentication support
coming out thro the ws bindings.  Other than this, adding  audit logging
could be something we can try out for implementation policies support.
  


I have created the following JIRA for this work:
http://issues.apache.org/jira/browse/TUSCANY-1651

It should help people interested in the security policy track progress, 
add comments, or if people are interested in helping out with this work, 
attach tests or implementation code :)


I have targeted the JIRA for the Tuscany SCA-1.0 release, which I'd like 
to get out in a few weeks.



Thanks.

- Venkat

On 8/30/07, Skip Schuler [EMAIL PROTECTED] wrote:
  

Hi,

I'm currently evaluating SCA and Tuscany. I really like much of what I've
seen so far, especially when experimenting with the assembly model and
different bindings. What I'd like to know more about is the policy
framework. I think the clear separation of concern that SCA promotes is a
killer, however I don't see any good resources or samples. I've checked
the documentation link on the Tuscany site, and I've tested with Tuscany
Java version 0.91..

So my questions are:

(1) Are there policies available for me and my services (to leverage and
test)? If so, which and how (guidelines)?

(2) A particular use case I have is to (a) reference a web service
protected
by basic authentication, and (b) add audit logging to certain services
(invocations). I was thinking these were candidates for policies, however
I'm not sure how to approach this... Thoughts?


Thanks.


An initial implementation of the Policy framework is available now, so 
you should be able to develop your own logging/auditing policy extension 
and plug it in the framework. The APIs to do that are still a little 
rough I think but trying them will help everybody get what they want in 
terms of policy, if you're interested.


To see how a policy is implemented see the Encryption sample policy 
classes in java/sca/samples/binding-echo.


IMO a logging policy would make another good sample for an 
implementation policy (i.e. a policy that you attach to a component 
implementation).


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Client requested features Was: Policy samples? (showcasing the killer feature of separation of concerns)

2007-09-05 Thread Jean-Sebastien Delfino

Hi Jeff, Thanks for some very good and useful input!

I added some comments inline.

[snip]
Anderson, Jeff T (CA - Toronto) wrote:

This is great news, that ties into an e-mail that I was just formulating this 
morning concerning additional features that have been requested for our client
the list isn't quite complete, by thought I would share it with you as most of 
it concerns the policy framework implementation at least in my opinion.
 
An FYI to everyone on the list...

I'm currently working with a major Canadian FSI client to develop a SOA 
platform based largely on Tuscany 9.1.  Services are currently being developed 
and tested for the platform, with plans to go into production by the end of 
this year.

  


Great! It's very encouraging to start seeing projects like yours using 
Tuscany!



I've just finished holding a architecture workshop where we discussed the 
benefits of our platform (largely based on Tuscany) to various technical 
stakeholders across the greater organization.  Representative stakeholders were 
given the chance to prioritize what they consider to be the most important 
features that they would want to see in the platform.  I have decided to share 
this with this list, as I believe that the majority of most of these 
requirements could be handled through a future version of Tuscany.

Currently the biggest feature requested is a service lifecycle mechanism that is capable of supporting both POJO/local method invocation as well as remote WSI basic interoperable mechanisms.  Key to this feature would be the ability to transparently switch from a local/POJO to a remote/WSI interoperable model without impacting business service code.  
 
Specifically we are looking for Tuscany to allow us to support the following

1) security-would like to be able to specify participation in existing security 
context much like the mechanisms provided by WS security, WS-secconv, and 
related specifications.  However, current implementations of Web services 
stacks makes it difficult to evolve a local component to a true web service and 
back again without having to follow a completely different security model.  We 
believe Tuscany to be a excellent location to access a policy driven framework 
that allow us to specify security requirements of the service either using 
annotations, SCDL configuration, or some other method.  Soap headers, or local 
security context could interact with the security policy dependent on each of 
the SCA binding used to wire together the various services.
Some examples could be the use of a @Fedactive annotation to declare that a 
services capable of issuing messages containing security tokens such as those 
described by WS-security and WS-trust.  Within a local binding, the annotation 
could still declare a need for the service to issue explicit security tokens, 
although the token may be passed using a different mechanism.
It would be ideal to have this model follow a more framework approach, with the 
explicitly defined plug-in architecture allowing third-party vendors to 
integrate Tuscany to their own vendor suite.
  


We now have an early implementation of the policy model, XML and 
annotation processors and APIs to populate the model, and ways for the 
runtime to determine which policies should apply where. So now is a good 
time to come up with the specific policies you need. I'm happy to see 
concrete use cases for this area, hoping that they'll help shape our 
Policy framework... and at the same time will give you what you need :)


Could you send an example of what the @Fedactive annotation would look 
like? what attributes and what they mean, and what you'll expect the 
particular policy implementation to do? how will it compare or relate to 
the security policies described in the SCA spec?


Speaking of the SCA spec, I have created JIRA 
http://issues.apache.org/jira/browse/TUSCANY-1651 to track the work on 
the security policies described in the SCA Policy Framework spec, hoping 
to get an initial implementation of these policies in our 1.0 release. 
I'm not sure yet if @Fedactive / a WS-FedActive policy will need its own 
JIRA or not, but JIRA-1651 could be used to help document and frame that 
work as well. We can always create new linked JIRAs as this work develops.


 
2) transaction/compensation-I realize that the SCA specification is little more vague/not finalized concerning this, however this is one of the most important features requested from our client.  Again I envision using the policy framework to define a transaction setting such as @NotRequired,@Supported etc.  For local bindings this would simply allow the typical distributed transaction mechanisms to reverse any resources held within a transaction lock.  For a more traditional remote Web services environment where resource control is the exception rather than the rule, an additional annotation of @compensator would allow service developer to declare the compensation transaction required 

Re: [DAS] Transaction support - a bigger picture question

2007-09-02 Thread Jean-Sebastien Delfino

[snip]
Luciano Resende wrote:

I guess your suggestion for starting simple is fine, and I guess
implementation.das could get integrated with SCA Policy and DAS would
have the necessary support, unless we find some bugs on the DAS side.
I'll see if I can get to this in the coming weeks...

BTW, what transaction manager are we going to use in Tuscany ?  Do we
have any today ?
  


Two suggestions:
- in a standalone environment, use JOTM [1]
- in Geronimo, get the TM from Geronimo, as done in the Tuscany/Geronimo 
plugin at [2]


[1] http://jotm.objectweb.org/
[2] http://svn.apache.org/repos/asf/geronimo/plugins/tuscany

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Problem configuring and reaching RSS, Atom bindings

2007-08-29 Thread Jean-Sebastien Delfino

Skip Schuler wrote:

Hi,

I've successfully deployed and tested the WAR on my Tomcat installation.
Thanks! The links from the index.html page works fine, and I'm able to reach
e.g. http://localhost:8080/sample-feed-aggregator-webapp/atomAggregator
  


Cool :)


A tiny detail: in your FeedAggregator.composite I see that you specify an
uri on the atom and rss bindings. I guess they are not used?  (at least not
reachable?). E.g. tuscany:binding.atom uri=
http://localhost:8083/atomAggregator/ from
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/feed-aggregator-webapp/src/main/resources/FeedAggregator.composite

Thanks again.

  


Good point, when we package an SCA composite in a Webapp we can't 
control the host and port since they are fixed by the Tomcat Web 
container, so we have ignore them and only consider the path part of the 
URI (/atomAggregator) and make this path available inside the context of 
the Webapp.


BTW this shows that the current Webapp integration approach is not 
leveraging the full power of SCA...


In an ideal SCA world you would expect the following:
- people would configure services in their SCA domain with URIs like 
http://myhost:8083/atomAggregator; and 
http://myotherhost:8087/rssAggregator;
- a deployment tool would take the SCA domain configuration and generate 
the configuration of Tomcat servers on myhost and myotherhost with the 
right ports and services deployed on them


This would really leverage SCA as a way to describe the configuration of 
a service oriented network, including multiple machines, servers and 
their configuration. It's what we're starting to do with SCA nodes being 
able to embed Tomcat or Jetty servers configured from the SCA metadata.


If on the other hand you start with existing - already configured - 
Tomcat servers and deploy pieces of your SCA domain to them in Webapps, 
then some of the network configuration aspects of SCA can't apply 
anymore. It's what you're seeing here, localhost:8083 must be ignored as 
the host and port are already fixed by your existing Tomcat server.


For now, I'll adjust the sample to just say binding 
uri=atomAggregator/ :)


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: SCA support in STP

2007-08-29 Thread Jean-Sebastien Delfino

[snip]
Luciano Resende wrote:

A related question, regarding SCA support in STP. Any plans to move to
the latest releases of Tuscany SCA ? We are targeting a 1.0 release
sometime soon, and would be great to have the Eclipse Tooling support
based on that release.

On 8/28/07, Chandrashekhar Jain [EMAIL PROTECTED] wrote:
  

H all,

I am working on a defect related to Tuscany in Eclipse STP project.  This 
is relate to Tuscany SCA Java M2 build.

 I am following the instructions in 
http://wiki.apache.org/ws/Tuscany/TuscanyJava/SCA_Java/GettingStarted
( Tuscany M2).  I am following the readme for the calculatorRMIService
example ( after downloading the examples).  The intention of doing this
is to understand how a rmi service example will run with Tuscany as of
M2 build.  This would help me understand the use case in eclipse.

I am following the instructions in the section Setting up Tuscany Standalone 
Runtime for the calculatorRMIService
example.  When i run mvn dependency:unpack, i get the following error :

[ERROR] BUILD ERROR



If you're still using Tuscany M2, it's from Nov 2006... a little too old 
:) . The SCDL syntax has changed quite a bit since last year.  If the 
STP tools are generating SCA 1.0 artifacts now, M2 from Nov 2006 is not 
going to be able to consume them.


I'd recommend to use our 0.91 release (July 2007) available at 
http://incubator.apache.org/tuscany/sca-java-releases.html, or even 
better, the latest release candidate which is currently being voted on, 
available at http://people.apache.org/~antelder/tuscany/0.99-RC2. Both 
support the SCA 1.0 SCDL syntax.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Problem configuring and reaching RSS, Atom bindings

2007-08-28 Thread Jean-Sebastien Delfino

Skip Schuler wrote:

Hi,

I'm trying to leverage the atom and rss bindings to expose some feeds using
java sca build 0.91. More specifically I'm trying to deploy a war on my
Tomcat instance. I have a class that implements
org.apache.tuscany.sca.binding.feed.Feed, however I'm not having any success
in reaching the atom or rss endpoints (which may be due to my
understanding). Anyway, here's my configuration;

.composite:

service name=RSSSampleFeed promote=AtomFeeder
binding.rss/
/service

service name=AtomSampleFeed promote=AtomFeeder
binding.atom/
/service

component name=AtomFeeder
implementation.java class=com.schuler.feed.FeederImpl /
/component

web.xml:

servlet-mapping
servlet-nameTuscanyServlet/servlet-name
url-pattern/SCA/*/url-pattern
/servlet-mapping


The URL http://localhost:8080/feed-atomrss/SCA/AtomSampleFeed fails with a
status code 500 (see below).

How can I reach the rss and atom endpoints? What will the URL be, and what
are correct binding configurations in the .composite?

I've also tried to deploy the demo alert-aggregator. It gives me the same
error at the suggested URL
http://localhost:8080/demo-alert-aggregator/services/AlertsFeedServiceRSS:


HTTP Status 500 -
--

*type* Exception report

*message*

*description* *The server encountered an internal error () that prevented it
from fulfilling this request.*

*exception*

java.lang.IllegalStateException: No servlet registered for path:
/AlertsFeedServiceRSS

org.apache.tuscany.sca.webapp.TuscanyServlet.service(TuscanyServlet.java:57)

*note* *The full stack trace of the root cause is available in the Apache
Tomcat/5.5.20 logs.*
--
Apache Tomcat/5.5.20

Am I missing something here?


Thanks!

  


Hi,

I'm taking a look at this now and have a few questions:

- When you start Tomcat, do you see messages indicating like this:
Aug 28, 2007 10:44:12 AM 
org.apache.tuscany.sca.host.webapp.WebAppServletHost addServletMapping

INFO: addServletMapping: /rssAggregator
Aug 28, 2007 10:44:12 AM 
org.apache.tuscany.sca.host.webapp.WebAppServletHost addServletMapping

INFO: addServletMapping: /atomAggregator/*

- Do you have an src/main/webapp/META-INF/sca-contribution.xml file 
listing the composites that need to be activated in the webapp, like this:

contribution xmlns=http://www.osoa.org/xmlns/sca/1.0;
 targetNamespace=http://aggregator;
 xmlns:a=http://aggregator;
  deployable composite=a:FeedAggregator/
/contribution

- Do you have anything else than the SCA components in your WAR, like 
other JSPs or servlets implementing some Web UI? or are you just 
interested in packaging the SCA components in a WAR because it's more 
convenient to deploy to Tomcat this way?


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Problem configuring and reaching RSS, Atom bindings

2007-08-28 Thread Jean-Sebastien Delfino

Skip Schuler wrote:

Hi,

I only have one index.html file in my WAR in addition to the SCA components,
i.e. no JSPs or servlets. My wish is to have everything in Tomcat (and
perhaps in a WAR), i.e. adding new server processes are not an option for my
application architecture (would mean more to monitor, maintain etc).

My META-INF/sca-contribution.xml looks like this:

?xml version=1.0 encoding=UTF-8?
contribution xmlns=http://www.osoa.org/xmlns/sca/1.0;
targetNamespace=http://sample;
xmlns:sample=http://sample;
   deployable composite=sample:SimpleFeeder/
/contribution

...while my simplefeeder.composite contains:

?xml version=1.0 encoding=UTF-8?
composite xmlns=http://www.osoa.org/xmlns/sca/1.0;
targetNamespace=http://sample;
xmlns:sample=http://sample;
name=SimpleFeeder

[...then the services and component listed above...]

/composite

I cannot see the output you mention from Tomcat, the only output from Tomcat
is:

Aug 28, 2007 3:16:24 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive feed-atomrss.war


Thanks again.

  


Hi,

I did some investigation and found a few bugs in our Webapp integration :)

1) TuscanyServlet does not pass the correct servletPath and pathInfo 
when it dispatches an HTTP request to the Tuscany binding servlet (like 
the feed binding or jsonrpc binding for example).


2) TuscanyServlet cannot be mapped to /* as it would block access to 
/index.html page. As a workaround most people have mapped TuscanyServlet 
to /SCA/* or /services/* for example but that breaks the convention for 
default SCA service URIs and will confuse bindings like the feed binding 
which return documents containing URIs to related resources.


3) I also ran into a bug with WebAppServletHost not handling URIs ending 
with / correctly, which will break the feed binding as well.


Good news is that I was able to fix (1), (2) and (3) in SVN revision 
r570619 of the Tuscany trunk :)


I converted the TuscanyServlet servlet to a servlet filter as a less 
intrusive way to dispatch HTTP requests which can be mapped to /* 
without breaking support for other Web content in the Webapp. Web.xml 
files should now look like this (simpler than before):


web-app

   display-nameApache Tuscany Feed Aggregator Sample/display-name
  
   filter

   filter-nametuscany/filter-name
   
filter-classorg.apache.tuscany.sca.host.webapp.TuscanyServletFilter/filter-class

   /filter

   filter-mapping
   filter-nametuscany/filter-name
   url-pattern/*/url-pattern
   /filter-mapping

/web-app


I committed a new sample showing the feed-aggregator packaged in a 
Webapp (and with an index.html page, similar to what you described) there:

http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/feed-aggregator-webapp/

and posted the WAR I built with revision r570619 there:
http://people.apache.org/~jsdelfino/test/

Could you please give it a try and let me know? Thanks.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: throws Exception clause of service method create problem

2007-08-27 Thread Jean-Sebastien Delfino

Radim Kolarik wrote:

Hi ant,

when is the move to Axis 1.3 planned? Will it make it to the upcoming release?

Thanks,
Radim

  


Hi Radim,

The 0.99 release (which we are currently voting on) uses Axis 1.2.

We're just starting to talk on tuscany-dev about cutting the 1.0 release 
branch around mid-September. I'd like it to use Axis 1.3 if others on 
the tuscany-dev list are OK with it.


In the meantime, you can try to build Tuscany with Axis 1.3. Somebody 
else already tried and it seems to work, see [1].


[1] http://www.mail-archive.com/[EMAIL PROTECTED]/msg22310.html

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Load-balancing between service instances

2007-08-27 Thread Jean-Sebastien Delfino

Simon Laws wrote:

On 8/9/07, Maciek Chociej [EMAIL PROTECTED] wrote:
  

Hello,

Recently I've been investigating the same thing. I'm trying to rebuild
our in-house
SOA platform with the use of Tuscany. What I am lacking is clustering,
dynamic
lookup and load balancing of service providers. I don't think I need
that for
local wiring, so I just focused on providing those over the ws binding.
From what
I see right now it is possible to do that rather gracefully in a number
of ways.
For example on the remote side, you can use your web container's
clustering
scheme. For example Tomcat clusters might balance request to the axis
servlets
responsible for the ws.binded services, the downside of this is that the
balancing
gets out of Tuscany's control. On the other hand, on the local side
(which I find
much nicer) I've tampered a little with the ws axis binding and it
should be easily
possible to inject a UDDI or similar ws lookup into the
ReferenceBindingProvider
or to build a 'lookup' version extending the axis one.

I'm rather new to Tuscany so any comments appreciated.
Cheers

Maciek

Olivier Collard wrote:


Hi,
I'm wondering how I could implement load-balancing with Tuscany.
  

Basically, I would need the ability to configure component X to talk to
multiple instances of another component Y.


Ideally, this would be like 'wiring' a reference to multiple instances
  

of component Y, running either locally or remotely.


Would I need to write some kind of extension for this?
Thanks,
O.





  




Luggage? GPS? Comic books?
Check out fitting gifts for grads at Yahoo! Search
http://search.yahoo.com/search?fr=oni_on_mailp=graduation+giftscs=bz

  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Hi



This is an interesting thread. The easy answer is that you are both right
that we haven't addressed load balancing or clustering directly just yet.

We are working on a first step at the moment which might make some of this
easier. That is the ability to have an SCA domain run across multiple nodes
(JVMs). We have had a very simple version of this for a while and we are
bringing it up again now on top of the new wiring mechanism and new SCA
binding.  The basic idea here is that you have parts of the domain, i.e.
component services,  running on separate nodes and Tuscany is able to locate
which node is running which service.

So this could be considered load balancing in that it allows you to
distribute your application across a number of nodes but it's not load
balancing in the sense that Olivier mentioned. I.e. spreading the load on a
single component/service.

I think Maciek is on the right track though. I like the ideas about having a
new binding that is able to provide this feature within a Tuscany domain
with reference to some registry of services. It would certainly be
interesting to do this with a binding based on the web services binding
with, as suggested, suitable logic to look up target services and pick one
from the list of returned endpoints.

Running inside a clustered container should also be a possibility. A you say
we would expect the clustering to be outside Tuscany's control in this case
and we would have to engineer for the registry of service endpoints to have
the address of the head node rather than the individual servers where
Tuscany is running components in the cluster. We would also need to look out
for session replication issues.

Either of you interested in doing some work on this?

Regards

Simon

  


So I guess there's at least two options:
[a] leverage the Tomcat clustering / load-balancing capabilities (make 
sure that Tuscany works OK in that environment)
[b] write a binding extension, or tamper with an existing one :) to add 
load-balancing in Tuscany


If any of you are interested in doing some work on this, here are a few 
pointers:


- a simple distributed sample, which could be used as a starting point 
to demonstrate some load-balancing 
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/calculator-distributed/


- the Tuscany SCA default binding, which uses a simple registry shared 
on the network to record endpoints of services as they start, and to 
resolve these endpoints later


the binding extension
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/binding-sca-axis2/

the distributed registry
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/distributed
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/distributed-impl/

We're just at the beginning of implementing this so it's the right time 
to jump in if you want to add some load-balancing :)


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL 

Re: [DAS] Transaction support - a bigger picture question

2007-08-27 Thread Jean-Sebastien Delfino

Comments inline.

[snip]
Amita Vadhavkar wrote:

I have not worked on the latest DAS-SCA integration so far, and am quite
sure Lucinao
will have good pointers in this area. But looking at the current
tuscany-implementation-das, can see the following possible.


Yes, I guess the idea is to:

- access Data inside an SCA component declared with implementation-das

- let the application developer annotate the component implementation 
and services with transaction policy intents to indicate what he wants 
in terms of transaction




So take this as my attempt to understand
intents/policySets
and DAS-SCA integration :)

DASImplementation implements org.apache.tuscany.sca.assembly.Implementationand
 contains org.apache.tuscany.sca.assembly.Service dasService.
Using dasService, requiredIntents on the Service can be found.

  


There are two categories of policy intents in SCA:

- implementation policy intents - used to indicate requirements of the 
component implementation (authorization for example, i.e. you must be 
authorized to execute my implementation)


- interaction policy intents - used to configure how a component will 
interact with others (confidentiality for example, i.e. messages 
exchanged with my component must be encrypted)


I think that the same will have to apply to transactions as well, the 
DAS implementation will probably have to deal with intents specified on 
both services and the implementation itself.



org.apache.tuscany.das.rdb.DAS interface can be enhanced to accept these
intents.  DAS
internally can configure DASConfig reflecting the intents specified , so
that DAS instance
construction happens with correct attributes. Based on these attributes DAS
transaction control
will occur (if intent is TransactionControl).

Intent TransactionControl can be qualified as say, 1) Container Transaction
Control,
2) DAS Transaction Control.
  


Can you describe this a bit more to help me understand what you mean by 
Container transaction control vs DAS transaction control?



Advantage of having intent attached to a service will be, using different
intents for different services
of same component.
  


Yes, different services - different interaction policies


Questions:
 What will be the policySets here?
Say,  if policySet/intent Container Transaction Control mandates that the
implementation should expose
 getConnection() so that container Runtime can use it, how this mandate can
be achieved?
  


Not sure at all yet. A PolicySet translates an Intent to the 
corresponding configuration of the underlying runtime, so it really 
depends on what the DAS + SCA runtime will expect.


[snip]

On 8/20/07, Mike Edwards [EMAIL PROTECTED] wrote:


Folks,

Sorry to cut across the discussion about Transaction support in DAS, but
are folks aware of the proposal for Transaction support in SCA?

which leads to the entertaining question of how the DAS transaction
support relates to the SCA transaction support.

The problem at the moment is that the SCA spec group only has an
unpublished draft of the Transaction support spec.  The intention is to
publish an updated draft in the near future.

However, I can say that the SCA spec mechanism is based on the use of
Intents to apply transactional characteristics to SCA components.

  


I've seen several exchanges on the list already from people interested 
in some support for transactions... So since the spec is not ready yet, 
how about starting now with something really simple like an 
implementation policy intent that would just say:

- transaction - i.e. my implementation must run as part of a transaction
- noTransaction - i.e. I don't want to run as part of a transaction

It may look simplistic, but will help us understand the end to end 
story, work on the necessary plumbing and integration with a transaction 
manager etc. and we can always add more later and adjust the details of 
the intents and policySets when the spec is ready.


Thoughts?

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: XQuery implementation scenarios

2007-08-22 Thread Jean-Sebastien Delfino
Hi, interesting topic :) so I've copied the tuscany-user list as well in 
case some of our users are interested too.



Vasil Vasilev wrote:

Hi all,

I would like to start a discussion about how we see the usage and the future of 
XQuery within the boundaries of SCA.

What inspired me when I started my work on the XQuery implementation type for 
SCA was the capabilities it provides in the area of data integration.
You can take a look for example on the BEA AquaLogic platform. You can see how 
they create the data integration layer of a SOA application on the basis of 
XQuery.

Currently the SCA specification supports integration with EJB and Spring, but I 
think XQuery provides many capabilities for working directly with XML data 
sources - like Web Services and DataBases. It should be noted that the main 
database vendors support XQuery.
  


Yes, I agree with you that it's missing from SCA right now, and people 
who use XML based programming models, XML schema for their data, WSDL 
for their interfaces, or BPEL for their processes, and want to work 
directly with the XML data will want to use XQuery to transform, filter, 
mediate their XML messages, and query data from all kinds of XML-enabled 
backends.


I think that with your code contribution we have a good starting point 
that we can now further develop and refine, use to develop scenarios, 
samples, demos that illustrate its usage. I'm hoping that this work and 
the discussions here will help put together a proposal to bring to the 
spec group.


With respect to database access, a number of folks in Tuscany are 
working on DAS (Data Access Service) and I believe they have started to 
look at XQuery as well, so I'm not sure if or how these two subjects are 
related, but I'd be curious to hear from the DAS people on the XQuery 
subject as well.


Another interesting question may be: If the XQuery program talks to a 
database, will we want to configure the database information on the 
XQuery component itself? or is the XQuery component going to be more 
independent of the database itself and we'll represent the accessed 
database as a separate service?



So having in mind what was said above one step for enhancing the XQuery 
implementation type is to decouple it from Saxon. The user should be able to 
plug-in his preferred XQuery processor. For example if he uses Oracle, he could 
delegate the execution of the XQuery script to the Oracle parser. Or he could 
prefer to use DataDirect's implementation, which is very optimized for 
accessing databases. In order to do it we could think of some kind of extension 
points, which define what is needed by the implementation, i.e. to introspect 
the XQuery file, to call a single function in it, to set external parameters 
and functions and etc.
  


That sounds good to me. Is there a standard XQuery processor API that we 
could use here? or should we define that extensibility mechanism 
ourselves as a specific Tuscany API?


How about using SCA policy intents to configure which XQuery processor 
is going to be used. Have you looked at SCA policies at all? I'm just 
brainstorming here, but maybe we could define a few policy intents that 
the application developer could put on a component to say I want an 
XQuery processor that works well with this XML databinding or I want 
the XQuery processor that works well with my database...


Another direction where the XQuery implementation type seems useful is in the area of mapping one service interface to another and in this way adapt both interfaces. He could even do it with a mapping tool, which generates XQuery code out of it. This could be very useful for BPEL implementation type services for example. Of course here also XSLT could be used, but I selected XQuery, because it is more similar to a programming language and it could easier fit in the concept of interfaces and operations of the services. 
In this area JBI inherently provide a solution (you can see Open ESB for example), while in SCA this concept is somehow missing. That's why I thing an XQuery implementation type would be a good step forward.
  


Right! XQuery can definitely be very useful to implement mediation 
components. I can see two different patterns here:


- Data mediation - I have data type X and need to transform it to Y, I 
could write a XQuery component named TransformX2Y for example and then 
reuse it in various places in my SCA composite application, from Java 
components that don't want to write this transformation in Java, from 
BPEL components between BPEL assigns, etc. This kind of component could 
have a fixed operation like any transform(any) for example, or a more 
specific operation signature indicating its input/output types. We could 
have one transform per component or choose to bundle a bunch of related 
transforms in the same component... There's a lot to explore here I 
think :)


- Interface mediation - I have two WSDL interfaces that don't exactly 
match, the operation 

Re: Feed binding (atom, rss) breaks when feed URL has parameters

2007-08-21 Thread Jean-Sebastien Delfino

Skip Schuler wrote:

Hi,

I'm not sure it this is a known issue or not, but here's the problem I'm
having with the feeding (atom, rss) binding;

I use the FeedAggregator sample that is shipped with
tuscany-sca-0.91-incubating. It runs fine out-of-the-box. However if I
change the feed reference to point to a feed that is at a endpoint that has
URL parameters, it fails (see stacktrace below).

To reproduce:  change the feed2 reference to something like this (which is
the feed from a confluence site):

binding.atom uri=
http://mywiki/spaces/createrssfeed.action?types=pagetypes=blogposttypes=commentspaces=sort=modifiedtitle=Dashboard+RSS+FeedmaxResults=15publicFeed=falseos_authType=basicrssType=atom/
  



Stacktrace:

run:
 [java] Exception in thread main org.osoa.sca.ServiceRuntimeException:
org.osoa.sca.ServiceRuntimeException: org.apache
.tuscany.sca.contribution.service.ContributionReadException:
com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected charact
er '=' (code 61); expected a semi-colon after the reference for entity
'types'
 [java]  at [row,col {unknown-source}]: [53,91]
 [java] at
org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(
SCADomain.java:263)
 [java] at
org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java
:68)
 [java] at feed.SampleServer.main(SampleServer.java:28)
 [java] Caused by: org.osoa.sca.ServiceRuntimeException:
org.apache.tuscany.sca.contribution.service.ContributionReadExce
ption: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character
'=' (code 61); expected a semi-colon after the refe
rence for entity 'types'
 [java]  at [row,col {unknown-source}]: [53,91]
 [java] at
org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(
DefaultSCADomain.java:106)
 [java] at
org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(
SCADomain.java:229)
 [java] ... 2 more
 [java] Caused by:
org.apache.tuscany.sca.contribution.service.ContributionReadException:
com.ctc.wstx.exc.WstxUnexpected
CharException: Unexpected character '=' (code 61); expected a semi-colon
after the reference for entity 'types'
 [java]  at [row,col {unknown-source}]: [53,91]
 [java] at
org.apache.tuscany.sca.assembly.xml.CompositeProcessor.read(
CompositeProcessor.java:308)
 [java] at
org.apache.tuscany.sca.assembly.xml.CompositeProcessor.read(
CompositeProcessor.java:65)
 [java] at
org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.read
(ExtensibleStAXArtifactP
rocessor.java:73)
 [java] at
org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.read(
CompositeDocumentProcessor.java:63)
 [java] at
org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.read(
CompositeDocumentProcessor.java:43)
 [java] at
org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor.read
(ExtensibleURLArtifactPro
cessor.java:63)
 [java] at
org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.processReadPhase
(ContributionServ
iceImpl.java:301)
 [java] at
org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.addContribution
(ContributionServi
ceImpl.java:251)
 [java] at
org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.contribute
(ContributionServiceImp
l.java:119)
 [java] at
org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(
DefaultSCADomain.java:104)
 [java] ... 3 more
 [java] Caused by: com.ctc.wstx.exc.WstxUnexpectedCharException:
Unexpected character '=' (code 61); expected a semi-colo
n after the reference for entity 'types'
 [java]  at [row,col {unknown-source}]: [53,91]
 [java] at com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(
StreamScanner.java:623)
 [java] at com.ctc.wstx.sr.StreamScanner.parseEntityName(
StreamScanner.java:1969)
 [java] at com.ctc.wstx.sr.StreamScanner.fullyResolveEntity(
StreamScanner.java:1471)
 [java] at
com.ctc.wstx.sr.BasicStreamReader.parseNormalizedAttrValue(
BasicStreamReader.java:1943)
 [java] at com.ctc.wstx.sr.BasicStreamReader.handleNsAttrs(
BasicStreamReader.java:3035)
 [java] at com.ctc.wstx.sr.BasicStreamReader.handleStartElem(
BasicStreamReader.java:2934)
 [java] at com.ctc.wstx.sr.BasicStreamReader.nextFromTree(
BasicStreamReader.java:2846)
 [java] at com.ctc.wstx.sr.BasicStreamReader.next(
BasicStreamReader.java:1019)
 [java] at
org.apache.tuscany.sca.assembly.xml.CompositeProcessor.read(
CompositeProcessor.java:302)
 [java] ... 12 more
 [java] Java Result: 1
BUILD SUCCESSFUL
Total time: 1 second


Thanks!

  


Good catch!

It looks like it's not an issue with the Feed binding, but a more 
general issue with a URL containing  in an XML attribute. Could you 
try to escape the  as amp;? like this:



Re: SCA distribution is really big now

2007-08-13 Thread Jean-Sebastien Delfino

Anderson, Jeff T (CA - Toronto) wrote:

I like having the samples, in the absence of extensive documentation these are 
key to understanding Tuscany...
I like the idea of packaging the samples as simple SCA contribution jar's.  I 
think keeping the footprint as little as possible is important, both in terms 
of optics and managing the complexity and understanding.
Just my humble opinion...
Jeff

  


+1 to keep the samples as simple SCA contribution JARs.

The current webapp packaging is not quite right anyway as it's 
introducing a half baked mix of J2EE and SCA programming model inside 
the webapp.


I'd suggest the following:

- Package SCA sample components as simple SCA contribution JARs, stay 
away from webapps.


- To allow JSP and servlets to invoke SCA service component, support 
implementation.web Web components as described in [1].


[1] http://www.osoa.org/pages/viewpage.action?pageId=3980





From: haleh mahbod [mailto:[EMAIL PROTECTED]
Sent: Mon 2007-08-13 14:55
To: [EMAIL PROTECTED]; [EMAIL PROTECTED]; Tuscany Users
Subject: Re: SCA distribution is really big now



It would be good to get user 's view on this as well.  I am re-posting to
tuscany-user list since I am not sure if  everyone monitors both lists.

On 8/11/07, ant elder [EMAIL PROTECTED] wrote:
  

Our SCA binary distribution is over 100Meg now and there's still
extensions
and dependencies I've not added yet. This seems a little big considering
we're trying to sell Tuscany as all svelte and light weight.

So what to do? The reason its so big is that every webapp sample and demo
we
have ends up including a copy of most of the runtime and dependencies. One
solution could be to just ship fewer prebuilt webapp samples and demos.
Another could be to change the way we do those samples so that each
sample/demo is just a simple SCA contribution jar and you have to deploy
that to some Tuscany runtime. We've already the webapp runtime that would
work for that, and the Geronimo Tuscany support, and we could  create
another standalone runtime if you don't want to use Tomcat or Geronimo.

What do people think, does the size matter, are there some other things we
could do?

   ...ant



--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Monitoring, logging and exceptions (again)

2007-08-10 Thread Jean-Sebastien Delfino

Simon Laws wrote:

On 8/8/07, ant elder [EMAIL PROTECTED] wrote:
  

On 8/7/07, Simon Laws [EMAIL PROTECTED] wrote:


We talked about this before (
http://www.mail-archive.com/[EMAIL PROTECTED]/msg16784.html) but
didn't come to any conclusions. So,

1/ What is the requirement?
2/ What is the technical solution?
3/ When should we try and get it done?

To get things going again here are some thoughts drawn from what was
  

said


in
the referenced thread.

1/ An API in line with accepted logging/management practices to support
arbitrary debugging and runtime info, warning and error logging
A common approach to exception/error handling specifically around
  

the


detail recorded in the error messages
Internationalization/localization
Execution Tracing

2/ Keeping it simple was a popular sentiment
A number of java logging solutions have been proposed Log4J, SLF4J
etc.
   I believe DAS is using Log4J.
   We have dependencies that also use logging tools. We can take a
look
at how others approach this, e.g, quick glance at the last CxF release
shows
they include SLF4J jars
Aspects were investigated to show how they can be used for tracing,
seems like an interesting optional facility but adds extra
complexity/dependencies
There was also a suggestion that we could implement some higher
  

level


tracing, e.g. runtime starts, stops, application loading, component
instance
creation etc.
We need to move error message out of the code and into resource
  

files


3/ I think we can reasonably expect to agree what approach we are going
  

to


take fairly quickly and provide some examples, i.e. before the next
release?
People suggested before that we take time out to go through the code
based and bring it into line. This will take a lot of time but can we
  

get


it
into 1.0?

Please add your thoughts to the list and we can then draw them together,
try
some of it out and come to some conclusions.

Simon

  

+1 for going with SLF4J. If we can decide on this soon then we can all
just
start adding it in to the code we're working on and debugging, and then
maybe have a focused sweep before 1.0 to make sure its in everywhere
useful.

   ...ant




Cross posting to the user list also as I expect this is close to everyone
heart.  Can everyone reply to both lists.

Thanks

Simon

  


We had a similar discussion in April [1].

Here's what I suggest for logging:

- Separate the trace calls from the runtime code. Insert them 
automatically at build time or run time using Aspectj. Raymond on SCA 
and Kelvin on SDO already showed how to do it.


- Use SLF4J in these generated trace calls.

[1] 
http://mail-archives.apache.org/mod_mbox/ws-tuscany-dev/200704.mbox/[EMAIL PROTECTED]


Thoughts?

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



OSCON 2007 Tuscany BOF

2007-07-26 Thread Jean-Sebastien Delfino
I was at a Tuscany BOF yesterday at OSCON 2007 
(http://conferences.oreillynet.com/cs/os2007/view/e_sess/14724).


I presented an overview of SCA, SDO, Tuscany, what's in our latest 
releases and some of the work in progress.


I have uploaded the presentation there:
http://cwiki.apache.org/confluence/display/TUSCANYWIKI/OSCON+2007+Tuscany+BOF

I also showed the BigBank demo, available in our SVN repository there:
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/demos/

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Injecting servlet context into component

2007-07-18 Thread Jean-Sebastien Delfino

[snip]
Robert Young wrote:

On a slightly different tack, if I implement my own servlet which
loads the servlet from WebAppServletHost would I be able to inject the
servlet context into the service via the generated servlet?

On 7/13/07, Robert Young [EMAIL PROTECTED] wrote:

Strangely I don't need anything from it, I just need it. The service
is for interacting with Nutch, which requires the servlet context to
load the configuration instance.The NutchConfiguration class grabs all
it's parameters from the servlet context but I don't really want to
have to do that myself.


On 7/13/07, ant elder [EMAIL PROTECTED] wrote:
 I think there isn't any way with the current code as-is. We could 
look at

 providing something, I'm not sure we should what support injecting the
 entire ServletContext into a component though, what is it exactly 
that you

 need from it in the service impl?

...ant

 On 7/12/07, Robert Young [EMAIL PROTECTED] wrote:
 
  I am running Tuscany with Tomcat and I need the servlet context 
to be

  available to one of my service implementations (used to load a
  particular configuration). I understand I can inject properties with
  default values but I can't seem to figure out how I can inject the
  servlet context.
 
  Thanks
  Rob
 



There is no facility to inject a ServletContext into an SCA component at 
the moment but we should be able to work something out if we understand 
your scenario. Who invokes your SCA component? a JSP or a Servlet? or is 
the component accessed through an SCA binding (WS, JSONRPC or Ajax for 
example)?


Thanks
--
Jean-Sebastien

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Getting service manually through servlet

2007-07-16 Thread Jean-Sebastien Delfino

ant elder wrote:

I think right now you have to use a META-INF/sca-contribution.xml file to
point to your .composite files, you can see an example in one of the 
Tuscany

samples, eg:
https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/calculator-webapp/src/main/webapp/META-INF/. 


An alternative may be to place your .composite files in a
META-INF/deployables  folder, but I've had problems getting that to 
work. I
think it would could be useful if when neither of those two things 
were done
then any .composite files found got deployed, any one know why we 
can't do

that?

  ...ant



Ant, could you describe the problems you ran into when you placed 
.composite files in a META-INF/deployables folder? We wanted to get this 
to work as it's significantly simpler than writing an 
sca-contribution.xml file.


Thanks.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Web Service binding deployed into Tomcat

2007-06-27 Thread Jean-Sebastien Delfino

Jean-Marc Taillant wrote:

Hi,

I downloaded the last versioon apache-tuscany-sca-0.90. I played with 
several composite sample and all looks ok. But what I need to do now 
is to use tuscany into tomcat ( deployed in a war file). This 
application will expose the ws binding. What I can't see is how to 
invoke the Web Service, I mean what is the service endpoint to test it?


I tryed the following URL:
http://localhost:8080/myapp/services/MyService
http://localhost:8080/myapp/services/MyService?wsdl

But with no success.

I also having the following exception:

GRAVE: Servlet.service() pour la servlet TuscanyServlet a généré une 
exception

java.lang.IllegalStateException: No servlet registered for path: null
   at 
org.apache.tuscany.sca.webapp.TuscanyServlet.service(TuscanyServlet.java:57) 

   at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) 

   at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) 

   at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) 

   at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) 

   at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 

   at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) 

   at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) 

   at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) 

   at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870) 

   at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) 

   at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) 

   at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) 

   at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) 


   at java.lang.Thread.run(Thread.java:595)

When I try ot invoke the above URLs.

Your help will be appreciate.

Thanks in advance,

Jean-Marc





Hi

The URL should be http://localhost:8080/web app name/path used to 
register the Tuscany servlet in web.xml/uri specified in your 
binding.ws element.


If this does not work, could you please provide us with your .composite, 
web.xml and .wsdl files? and we'll take a look. Just paste the files in 
the body of the email (attachments are filtered out) or attach them to a 
JIRA issue (http://issues.apache.org/jira/browse/TUSCANY).


Thanks.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Accessing c++ service from java

2007-06-22 Thread Jean-Sebastien Delfino

Asha AmbikaVijayakumaran wrote:

Dear team,
 
I am having a c++ service component eg:Account Service from your 
examples, the service is exposed via ws binding, and now i need this 
service to be accessed from java using apache tuscany,
 
I have written a composite and i have attached it here.
 
I am getting following exceptions
 
Composite assembly problem: Reference not found for component 
reference: HelloWorldServiceComponent/accountService
Composite assembly problem: No type specified on component property: 
HelloWorldServiceComponent/accountService
Composite assembly problem: Component reference target not found: 
AccountService
 
Can anyone help me to find out a solution how c++ service can be used 
in java.

I am toubling to find a solution.
 
Please help
 
Thanks/Regards

Asha



Hi, you probably just need a minor fix to your composite file and maybe 
a small change to your Java class as well.


A component/reference does not need a target attribute if it's promoted 
by a composite/reference.


If present, a component/reference target should reference another 
component/service.


You don't need an accountService component/reference element anyway if 
the reference is already declared with an @Reference annotation in your 
HelloWorldServiceComponent class.


But from the No type specified on component property: 
HelloWorldServiceComponent/accountService message I'm guessing that 
maybe it's not annotated or annotated with an @Property instead?


So I'd suggest the following.

1. Change your composite as follows:

composite xmlns=http://www.osoa.org/xmlns/sca/1.0;
   targetNamespace=http://helloworld;
   xmlns:hw=http://helloworld;
   name=helloworldwsclient
  
   component name=HelloWorldServiceComponent

 implementation.java class=helloworld.HelloWorldServiceComponent/
  /component

   reference name=HelloWorldService 
promote=HelloWorldServiceComponent/helloWorldService

   interface.java interface=helloworld.HelloWorldService /
   binding.ws 
wsdlElement=http://helloworld#wsdl.port(HelloWorldService/HelloWorldSoapPort)/

   /reference

reference name=AccountService 
promote=HelloWorldServiceComponent/accountService
   interface.wsdl 
interface=http://www.bigbank.com/AccountService#wsdl.interface(AccountService)/
   binding.ws 
wsdlElement=http://www.bigbank.com/AccountService#wsdl.port(AccountService/AccountServiceSOAP)/

/reference

/composite

2. Make sure that your HelloWorldServiceComponent annotates the 
accountService field or setter method with an @Reference annotation.


Hope this helps.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: A question about SCA descriptor file structure and meaning.

2007-06-13 Thread Jean-Sebastien Delfino

legolas wood wrote:

Hi
Thank you for reading my post
Can you please explain following snippet for me?

reference name=StockQuoteReference1

   interface.wsdl 
interface=http://www.stockquote.org/StockQuoteService#wsdl.interface(StockQuote)/ 



   binding.ws 
wsdlElement=http://www.stockquote.org/StockQuoteService#wsdl.service(StockQuoteService) 


   wsdli:wsdlLocation=http://www.stockquote.org/StockQuoteService
   http://www.stockquote.org/StockQuoteService.wsdl; /

/reference


Imagine that i have a java class named Calculate, it has one method 
which takes two numbers and return an integer as result. something like :






@WebService()

public class Calculate {

   /**

* Web service operation

*/

   @WebMethod

   public int addThem(@WebParam(name = a)

   int a, @WebParam(name = b)

   int b) {

   // TODO write your implementation code here:

   return a+b;

   }

  
}




URL to wsdl of this web service is like: 
http://localhost:8080/sample/CalculateService?wsdl


Now how the above code snippet which is an SCA code snippet should 
change to use my web service and its addThem method?



Thanks




Hi,

If I understand correctly you're trying to use an SCA reference with an 
SCA Web Service binding to talk to a CalculateService Web service, for 
which you already have a WSDL?


If this is your scenario then it's pretty simple.

You simply need to change the SCA reference to name the WSDL portType 
and service (or port) representing the CalculateService in the WSDL 
returned at http://localhost:8080/sample/CalculateService?wsdl.


It's probably best to have a local copy of the CalculateService WSDL 
instead of relying on http://localhost:8080/sample/CalculateService?wsdl 
to be online all the time, so I'd recommend to save it to 
CalculateService.wsdl, store that WSDL locally with your other SCA 
artifacts, then change your SCA reference like this:


composite ...

 component name=SampleComponent

   reference name=CalculateReference
  interface.wsdl 
interface=http://calculate-namespace#wsdl.interface(Calculate)/
  binding.ws 
wsdlElement=http://calculate-namespace#wsdl.service(CalculateService)/

   /reference

   ... other configuration of your component

 /component

/composite

A few comments:

- An SCA reference usually lives inside a component (representing the 
code that's going to talk to the reference), inside an SCA composite. I 
just added them here to put the reference/ in context.


- I have to guess what's in your WSDL, so in my example 
http://calculate-namespace would be the namespace of your WSDL definition


- Calculate would be the name of your WSDL portType/

- CalculateService would be the name of your WSDL service/

- I recommend to avoid using wsdlLocation in general as I doubt that 
your application will always run on localhost:8080 :) and when you 
install it somewhere else you probably don't want to go back to your SCA 
reference and change that location. What we usually do instead is we 
place a local copy of the WSDL file in the client application, and the 
Tuscany runtime will automatically find it for you.


Hope this helps.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Next Tuscany SCA release, was: 0.91 release?

2007-06-01 Thread Jean-Sebastien Delfino

Hi all,

The Tuscany SCA Java release 0.90 will be available next week and now a 
discussion has started to figure out what can be in the next release.


It would be great to get user feedback on what your wish list is and if 
there are areas that need attention. I am forwarding this email to the 
user list to help figure out what is important to you.



Jean-Sebastien Delfino wrote:

ant elder wrote:
With the 0.90 release almost out how about starting on 0.91? Its been 
almost

3 weeks since the code chill for 0.90, be good if we could start doing
releases much more regularly and 4 - 6 weeks for a small point 
release seems
good to me, so how about aiming for cutting an 0.91 branch in a week 
or 2?
The main things I'd like to get out are the improvements to the 
scripting

scripting support with optional .componentType sidefiles and dynamic
interfaces, and the ajax binding and jsonrpc binding simplification and
unification. With those, the new feed binding and the port of the 
aggregator
sample that would give 0.91 a sort of web20/scripting focus, and 
doing it

quick like this should make it relatively easy to get done by using the
trunk stability from 0.90.

  ...ant



In addition to what you listed here, I looked at your next release 
work items list at [1] and there are a few other items from that list 
+ some that were not in your list that I'd like to get into the next 
release:


[1] http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg18127.html

Web Service binding
- work without pre-existing wsdl doc
- async
- Fix open jira's about ?wsdl and endpoint url
- get the Axis2 REST support to work, I tried today and I think that 
our TuscanyServlet blocks it


WebApp
- ability to serve HTML files when we embed Jetty or Tomcat

Binding-JMS
- get going again, I think it's starting to work again as Simon is 
using it for his SCA domain experiments


Spring container
- get it going again, Mike Edwards seems to have made good progress at 
getting it working again, from what I can see in his recent commit


SCA Assembly and Domain
- include some what Simon Laws has started to allow components to be 
in multiple runtimes
- a number of detail fixes and improvements, support for multiple 
bindings on references for example

- support for import/export in SCA contributions

Distributions
- don't want to always distribute *everything*
- maybe distributions targeting each runtime and you can ± extensions 
when

you build the distro?

Java SCA APIs
- add missing APIs like RequestContext
- would be good to get a first cut of some conversational support

Most of this can be done relatively quickly, so having the next 
release in 4/6 weeks sounds good to me. I agree with you that we 
should have much more frequent releases from now on, as our SPIs and 
core are now stable and we're starting to see good progress with 
extensions.


So, we could cut a new branch soon (I'd suggest in 2 or 2.5 weeks 
rather than 1 week), and having the release branch in place will allow 
us to decide for each feature or bug fix if we keep it in trunk only 
(because it's likely to not be ready for that release) or trunk + the 
branch.


Thoughts?




--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Simple use case problem

2007-06-01 Thread Jean-Sebastien Delfino

Patrick Vanhuyse wrote:

Hi Simon,

I removed sca-contibutions.xml from provider. I copied Provider.composite to
consumer/src/main/resource. I add ProviderComposite to the consumer
sca-contribution.xml. And it works.

I have had a look at the code in SCADomain.newInstance(). It loads only one
sca-contribution.xml, the first found by the class loader, I think. To solve
this, it should look at all the sca-contribution.xml (conflict : they are
all in the same folder) from the various jars on the classpath in place of
using only one (depends on the ClassLoader). I don't know if it's possible
(the class loading mechanism is a mystery to me !). Furthermore, there is
the SCA loading mechanism used which is yet a greater mystery.

I will go on with my other tests. Afterwards, if I dare, I will throw myself
into all this loading stuff.

Thanks for your help.

Patrick

-Message d'origine-
De : Simon Laws [mailto:[EMAIL PROTECTED]
Envoyé : mercredi 30 mai 2007 18:11
À : tuscany-user@ws.apache.org
Objet : Re: Simple use case problem


Hi Patrick

What is going on here is that the consumer module is not loading the
provider composite. I can make this work by doing the following...

1 - Make the provider composite available to the consumer runtime
  copy the Provider.composite to consumer/src/main/resource
2 - Make the ProviderComposite deployable
  add the ProviderComposite to the consumer
sca-contributions.xmlfile

Now I kind of expected to have to do 2 so that the runtime knows that the
composite exists and should be deployed.

However I don't know how to get round 1. I would like to be able to specify
a jar to load alongside the  consumer composite that is loaded. However I
took a look at the code and there seems to be more work to do in making the
runtime and contribution service flexible in this way. All help is
gratefully received if you feel like getting your hands dirty ;-)

Regards

Simon


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  


Hi,

DefaultSCADomain is a minimal domain bootstrap utility initially 
designed to work with a single SCA contribution (one JAR or folder).


If you want to try, you should be able to add multiple contributions to 
a domain using EmbeddedSCADomain instead of DefaultSCADomain. 
EmbeddedSCADomain is a more flexible domain bootstrap class that allows 
you to add/remove contributions, add/remove composites to the domain, 
and start/stop components contained in these composites. The 
EmbeddedSCADomainTestCase [1] test case shows how to use 
EmbeddedSCADomain, to create a domain, populate it and use it.


[1] 
http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/host-embedded/src/test/java/org/apache/tuscany/sca/host/embedded/impl/EmbeddedSCADomainTestCase.java


Line 62:
   Contribution contribution = 
contributionService.contribute(http://test/contribution;, new URL(url), 
myResolver, false);

adds a contribution, the URL can point to a contribution folder or JAR.

Maybe you can try to add multiple contributions this way? let me know 
how it goes... Thanks.


Hope this helps.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Use of a factory pattern with SCA

2007-05-15 Thread Jean-Sebastien Delfino

Nicholas Williams wrote:

Hi all,

Section 1.4.1 of the SCA Java Common Annotations and APIs specification states 
the following:

Using reference injection is the recommended way to access a service, since it 
results in code with minimal use of middleware APIs. The ComponentContext API should be 
used in cases where reference injection is not possible.

Injection is not appropriate where a client component does not know how many 
service components its will need to create until runtime. Conferencing is a 
good example of this, how many participant instances should be created?

In order to dynamically create the objects we need, we have devised the 
following pattern:

   * The factory will be stateless.
   * The factory will be injected into the client component.
   * The factory will create a specific type of component.
   * The factory will use the ComponentContext to create the required component.
   * The created component must obey the specified implementation scope, 
stateless or conversational.
   * The factory will use the RequestContext to connect up any callbacks 
between the component and the client.
   * The connected callback must also obey the specified implementation scope, stateless or conversational. 


Does anyone have any thoughts as to whether this:

   * Is perhaps trying to bring an OO style of programming to what is really a 
SOA environment?
   * Whether the callback aspect is realistic?
   * In short, is this a good pattern or an anti-pattern?

Any thoughts would be much appreciated

Thank you

  


I am trying to understand the use case that you're after and have a few 
questions:


Taking your conferencing example, would you want to create a new 
component (with a different component name, configuration, wires etc.) 
to represent a conference participant? In other words are you looking 
for Java APIs to define or augment an assembly dynamically, as an 
alternative to a fixed XML document?


Or do you have a fixed set of components already defined and configured 
in your assembly, and need to create a new instance of a defined 
component to represent a conference participant? I guess this would look 
like some kind of scoping mechanism, introducing a different scope than 
Composite, Request, or Conversation. Actually, I don't know enough about 
your use case yet, but if somebody joins a conference this may nicely 
map to a form of Conversation establishment...


Where would a newly created component run? the current composite and 
active component? somewhere else in the SCA domain?


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Any SCA for SDO M3?

2007-04-23 Thread Jean-Sebastien Delfino

Dennis,

Some comments inline.

Dennis Virt wrote:

Dear Simon and Luciano,


Thank you for your detailed replies and comments. I also got an 
impression that trunk is maintained healthy and buildable.


We have made changes to the trunk recently to make it easier to build. 
Could you try the following?

cd tuscany/java
mvn
This should build the SDO, DAS and SCA runtimes. I just tried with 
revision r531619 and they all built OK.


You can imagine how much frustration has brought to me my attempt to 
build the web service WAR, since I did not know that war plugin was 
not operational :-)


We're going to try to make it more clear that modules under 
java/sca/contrib (including the WAR plugin) are old and not operational. 
I started a discussion on that earlier today on tuscany-dev.


Pure M3 war plugin did not work because of contribution dependency on 
2.0alpha tag. I tried to mix M3 SDO/DAS and 2.0alpha-incubating branch 
from TSSS demo, M2 SCA and M3 SDO/DAS and finally came back to all M2 
code. The latter yielded the same results as M2 SCA and M3 SDO/DAS (at 
the very end of this message).


Mixing M3 and M2 will be tricky, I don't recommend that path. M3 SDO is 
very close to a release, and we've started to put an SCA release 
together, targeting a release in a few weeks, so I suggest that you try 
the SCA code in trunk instead of SCA M2.


I want to bundle as WAR just enough SCA runtime needed to 1) feed data 
to an AJAX client over a web service


Are you planning to use SOAP or JSON-RPC? Our SOAP binding is 
operational now, the JSON-RPC binding is not up and running as of today 
but I expect to see it running again later this week.


2) and resolve change summaries from the client to the database. 
Ideally I wanted this WAR to be deployable to Tomcat, JBoss, IBM 
WebSphere 6.1 and Bea WebLogic. I was aware that WebSphere and 
WebLogic would've needed much more attention in preparing descriptors 
and crafting dependencies. If I succeeded with proof of concept, I'd 
be able to assign further packaging to specialists capable of 
WebSphere and WebLogic parts.


Do you need a WAR or would you be OK to start with an embedded Tomcat? 
With the embedded Tomcat configuration, we embed a minimal Tomcat 
instance and boot it from inside Tuscany, instead of having the Tuscany 
runtime installed on top of an existing Tomcat, with the SCA application 
running in a WAR.


If you want to see how our embedded configuration works, you can take a 
look at the test cases under java/sca/modules/binding-ws-axis2. They use 
Jetty instead of Tomcat but I'm going to add a Web Service sample to 
java/sca/samples later today which will show how to provide a Web 
Service uing Tomcat. I'll post an update to this thread with a link to 
the sample when it's ready.


Running an SCA application in a WAR should also be supported again soon, 
probably sometime next week, as several Tuscany developers have already 
indicated on our dev list that they were interested in getting this to 
work for our upcoming release. I'm expecting our new Webapp packaging 
story to be much simpler than before and not require a special Tuscany 
WAR plugin anymore to create WARs.




I will try now with M3 code and SCA embedded in Jetty or Tomcat.

A few words about problem that stopped my advance with WAR packaging 
of web service. Below are the pom.xml, WSDL, default.scdl, DAS 
configuration and service implementation if anybody cares to glance 
through and maybe point out any obvious mistakes. I stripped down some 
comments. M2 SCA/SDO/DAS, just as M2 SCA and M3 SDO/DAS packaged as 
WAR and deployed to Tomcat 5.5.23 give me the following message when I 
try to invoke loadProcessFolderContent:




The error below is probably caused by a problem selecting the 
Databinding to use in your application. I'm not too familiar with how 
Databindings worked in M2 - maybe other Tuscany developers can help 
here? - but I've seen the SDO databinding consistently work with Web 
Services recently with the latest code in trunk.


java.lang.IllegalArgumentException: Complex type is not supported for 
simple jav

a databinding.
at org.apache.tuscany.spi.databinding.extension.SimpleTypeMapperExtensio
n.toJavaObject(SimpleTypeMapperExtension.java:275)
at org.apache.tuscany.spi.databinding.extension.SimpleType2JavaTransform
er.transform(SimpleType2JavaTransformer.java:51)
at org.apache.tuscany.core.databinding.impl.MediatorImpl.mediate(Mediato
rImpl.java:95)
at org.apache.tuscany.core.databinding.impl.Input2InputTransformer.trans
form(Input2InputTransformer.java:197)
at org.apache.tuscany.core.databinding.impl.Input2InputTransformer.trans
form(Input2InputTransformer.java:47)
at org.apache.tuscany.core.databinding.impl.MediatorImpl.mediate(Mediato
rImpl.java:95)
at org.apache.tuscany.core.databinding.impl.DataBindingInteceptor.transf
orm(DataBindingInteceptor.java:105)
at org.apache.tuscany.core.databinding.impl.DataBindingInteceptor.invoke

Re: Any SCA for SDO M3?

2007-04-23 Thread Jean-Sebastien Delfino

[snip]
Jean-Sebastien Delfino wrote:

Dennis,

Some comments inline.

Dennis Virt wrote:

Dear Simon and Luciano,


Thank you for your detailed replies and comments. I also got an 
impression that trunk is maintained healthy and buildable.


We have made changes to the trunk recently to make it easier to build. 
Could you try the following?

cd tuscany/java
mvn
This should build the SDO, DAS and SCA runtimes. I just tried with 
revision r531619 and they all built OK.


You can imagine how much frustration has brought to me my attempt to 
build the web service WAR, since I did not know that war plugin was 
not operational :-)


We're going to try to make it more clear that modules under 
java/sca/contrib (including the WAR plugin) are old and not 
operational. I started a discussion on that earlier today on tuscany-dev.


Pure M3 war plugin did not work because of contribution dependency on 
2.0alpha tag. I tried to mix M3 SDO/DAS and 2.0alpha-incubating 
branch from TSSS demo, M2 SCA and M3 SDO/DAS and finally came back to 
all M2 code. The latter yielded the same results as M2 SCA and M3 
SDO/DAS (at the very end of this message).


Mixing M3 and M2 will be tricky, I don't recommend that path. M3 SDO 
is very close to a release, and we've started to put an SCA release 
together, targeting a release in a few weeks, so I suggest that you 
try the SCA code in trunk instead of SCA M2.


I want to bundle as WAR just enough SCA runtime needed to 1) feed 
data to an AJAX client over a web service


Are you planning to use SOAP or JSON-RPC? Our SOAP binding is 
operational now, the JSON-RPC binding is not up and running as of 
today but I expect to see it running again later this week.


2) and resolve change summaries from the client to the database. 
Ideally I wanted this WAR to be deployable to Tomcat, JBoss, IBM 
WebSphere 6.1 and Bea WebLogic. I was aware that WebSphere and 
WebLogic would've needed much more attention in preparing descriptors 
and crafting dependencies. If I succeeded with proof of concept, I'd 
be able to assign further packaging to specialists capable of 
WebSphere and WebLogic parts.


Do you need a WAR or would you be OK to start with an embedded Tomcat? 
With the embedded Tomcat configuration, we embed a minimal Tomcat 
instance and boot it from inside Tuscany, instead of having the 
Tuscany runtime installed on top of an existing Tomcat, with the SCA 
application running in a WAR.


If you want to see how our embedded configuration works, you can take 
a look at the test cases under java/sca/modules/binding-ws-axis2. They 
use Jetty instead of Tomcat but I'm going to add a Web Service sample 
to java/sca/samples later today which will show how to provide a Web 
Service uing Tomcat. I'll post an update to this thread with a link to 
the sample when it's ready.


Running an SCA application in a WAR should also be supported again 
soon, probably sometime next week, as several Tuscany developers have 
already indicated on our dev list that they were interested in getting 
this to work for our upcoming release. I'm expecting our new Webapp 
packaging story to be much simpler than before and not require a 
special Tuscany WAR plugin anymore to create WARs.




Dennis,

I have committed two new modules under java/sca/samples:
- helloworld-ws - A sample showing how to provide a HelloWorld service 
with a Web Service binding. The helloworld.HelloWorldServer program 
starts Tuscany with an embedded Tomcat server to host the Web service.
- helloworld-wsclient - A sample client. The helloworld.HelloWorldClient 
program shows how to start an SCA client and invoke the HelloWorld Web 
Service.


The samples work with SVN revision r531727 of the Tuscany trunk.

Hope this helps.

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: BigBank trouble

2007-02-23 Thread Jean-Sebastien Delfino

Snehit Prabhu wrote:

Hi,
I'm new to Tuscany. A little help with the Bigbank example would be 
appreciated.
Im using the SCA samples that I downloaded from here : 
http://incubator.apache.org/tuscany/sca_downloads.html 
http://incubator.apache.org/tuscany/sca_downloads.html. I downloaded 
the source zip files from windows and built the same. My understanding 
of the BigBank example is - copy the .war files into the webapps 
directory of Tomcat (Im running Tomcat 5.5.20), and you should be 
ready to go. The two WARs in question are : 
$sca_samples\applications\bigbank\account\target\sample- 
bigbank-account.war and 
$sca_samples\applications\bigbank\webclient\target\sample-bigbank-webclient.war.


Everything works fine till here; I open the Tomcat Manager 
WebInterface - the two newly added WARs (sample-bigbank-account.war 
and sample-bigbank-webclient.war) are reflected in the list of 
applications. Now, when I try to start sample-bigbank-account 
application, Tomcat throws the following error :
FAIL - Application at context path /sample-bigbank-account could not 
be started.


I stopped and restarted Tomcat to get a fresh error trace. Here is the 
error log (stdout) of Tomcat as it initializes :


[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven2 ( http://repo1.maven.org/maven2)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-incubating-repository 
(http://people.apache.org/repo/m2-incubating-repository 
http://people.apache.org/repo/m2-incubating-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven (http://repo1.maven.org/maven)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-snapshot-repository ( 
http://people.apache.org/repo/m2-snapshot-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven2 ( http://repo1.maven.org/maven2)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-incubating-repository 
(http://people.apache.org/repo/m2-incubating-repository 
http://people.apache.org/repo/m2-incubating-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven (http://repo1.maven.org/maven)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-snapshot-repository ( 
http://people.apache.org/repo/m2-snapshot-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven2 ( http://repo1.maven.org/maven2)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-incubating-repository 
(http://people.apache.org/repo/m2-incubating-repository 
http://people.apache.org/repo/m2-incubating-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven (http://repo1.maven.org/maven)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-snapshot-repository ( 
http://people.apache.org/repo/m2-snapshot-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven2 ( http://repo1.maven.org/maven2)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-incubating-repository 
(http://people.apache.org/repo/m2-incubating-repository 
http://people.apache.org/repo/m2-incubating-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven (http://repo1.maven.org/maven)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-snapshot-repository ( 
http://people.apache.org/repo/m2-snapshot-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven2 ( http://repo1.maven.org/maven2)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-incubating-repository 
(http://people.apache.org/repo/m2-incubating-repository 
http://people.apache.org/repo/m2-incubating-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven (http://repo1.maven.org/maven)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-snapshot-repository ( 
http://people.apache.org/repo/m2-snapshot-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven2 ( http://repo1.maven.org/maven2)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-incubating-repository 
(http://people.apache.org/repo/m2-incubating-repository 
http://people.apache.org/repo/m2-incubating-repository)
[WARNING] Unable to get resource from repository 
http___repo1.maven.org_maven (http://repo1.maven.org/maven)
[WARNING] Unable to get resource from repository 
http___people.apache.org_repo_m2-snapshot-repository ( 
http://people.apache.org/repo/m2-snapshot-repository)
[WARNING] Unable to get resource from repository apache.incubator ( 
http://people.apache.org/repo/m2-incubating-repository/)

[Native] Threading issues with Ruby on Windows, was: Alert Aggregator Sample - was: Web 2.0 sample

2007-02-11 Thread Jean-Sebastien Delfino

[snip]
Andrew Borley wrote:

Further things that could be done:
Demonstrate use of more than one language/SCA runtime. Currently all
components are implemented in Python. There is a Ruby version of the
POPChecker, but I hit threading issues when I tried to use this under
HTTPD so I had to replace it with a Python version.


The Ruby 1.8.5 interpreter is not thread safe. To work around this 
limitation on Windows (where HTTPD runs multithreaded) we can use CGI 
(or FastCGI like many Ruby on Rails users do).


Note that this is not really a problem on Linux where most people run 
multiple HTTPD processes instead of threads.


I have started a CGI variation of the server side REST binding support. 
This can be an interim solution on Windows until the Ruby interpreter 
becomes thread safe, as well as a super easy way to test REST based 
applications outside of the server, just from the command line...


BTW your Web 2.0 sample app is really cool!!

--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Tuscany development status

2007-01-01 Thread Jean-Sebastien Delfino

Francesco Furfari wrote:

Hello,
I'm trying to push for the adoption of SCA model (Tuscany) in a 
project whose development activities will start on the second quarter 
of the next year.
Next week there will be a meeting in which I would like to summarize 
the status of Tuscany project. In particular, I would like to report 
on the
current conformity of Tuscany to the SCA specification, the companion 
UI tools that can ease the development (not only those that may be 
under the Apache effort, but also e.g. Eclipse), when  a final SCA 
specification is expected, and if other IT providers are 
developing/providing more implementations.


I could gather such information from the web (of course I'm doing), 
but I would appreciate whether you give me some hints on the practical 
difficulties that we could have when approaching Tuscany.


Thanks in advance
francesco

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Francesco,

I'm not sure if anybody else has already sent you any pointers, as most 
of us were on vacation the last 2 weeks, but most of the SCA information 
is on our Web site http://incubator.apache.org/tuscany, the OSOA spec 
collaboration site http://www.osoa.org and the PHP SOA package at 
http://pecl.php.net/package/SCA_SDO


Here are a few more specific pointers:

The latest level of the SCA spec is 0.96 and the OSOA collbatoration is 
working towards a 1.0 spec.


You can find a list of early implementations of SCA and SDO (including 
Apache Tuscany of course) at 
http://www.osoa.org/display/Main/Early+Implementation+Examples+and+Tools.


The Eclipse SOA tools platform project at http://www.eclipse.org/stp/ is 
building Eclipse tools for SCA.


Finally the Tuscany SCA Milestone 2 announcement emails give you a list 
of the SCA features and spec levels supported in both the C++ and Java 
Tuscany runtimes.
C++ M2: 
http://mail-archives.apache.org/mod_mbox/ws-tuscany-user/200611.mbox/[EMAIL PROTECTED]
Java M2: 
http://mail-archives.apache.org/mod_mbox/ws-tuscany-dev/200612.mbox/[EMAIL PROTECTED]


Community discussions on the next steps for Tuscany just started before 
the holidays and they're probably going to resume soon on the 
tuscany-dev@ws.apache.org mailing list.


Feel free to post here or on tuscany-dev if you have more specific 
questions. I'll be able to help more with Tuscany C++ related questions 
but it looks like most of the people working on Tuscany Java are back 
from vacation this week as well.


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [C++] Where next for Tuscany C++?

2006-11-14 Thread Jean-Sebastien Delfino

Simon Nash wrote:
[snip]

I'd like to see closer integration between the Tuscany Java and C++
runtimes, with seamless cross-runtime wiring, deployment, and
composition.  The application developer would write SCDL containing
components with different implementation types, and the application
would be deployed to a combination of both runtimes according to
the hosting needs of the components.  Users would see a single
federated Tuscany runtime environment hosting multiple implementation
languages and component types, rather than being aware of two Tuscany
runtimes written in Java and C++ as they are at present.

  Simon



Right, I could imagine an application made of Java, C++, BPEL and PHP 
components, using Web and JMS services for example:


- The Java components would run in a Java  component runtime.
- The C++ components would run in a C++ component runtime.
- The BPEL components would run in a runtime equipped with a BPEL engine.
- The PHP components would run in a PHP runtime environment.
- The Web services and JMS services would be deployed to Web service and 
JMS enabled runtimes.


Small specialized runtimes would host the various pieces of my 
application and communicate over a service network.


As an application developer, I wouldn't care or want to know the 
particular language - Java, C++ - used to implement a particular 
runtime. I would be more interested in its capabilities and the 
component programming model it supports.


I'd be willing to help anybody interested in working on any scenarios 
demonstrating this approach. Maybe we could use the WS-I supply chain 
scenario that we had started at 
http://svn.apache.org/repos/asf/incubator/tuscany/cpp/sca/samples/SupplyChain/ 
for example, or any other scenario that people would be interested in 
working on...


--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[HELP wanted] Review M2 docs showing how to use SCA in Python and Ruby

2006-10-15 Thread Jean-Sebastien Delfino
The M2 release of the Tuscany/C++ SCA project introduces the ability to 
write SCA components in Python and Ruby.


I have reviewed the documents describing that feature in the M2 Release 
Candidate 1 distribution posted by Andy, but I'm sure there's a good 
number of Python and Ruby developers subscribed to the list, and we 
could use your help and feedback to improve these docs.


So if anybody is interested, you can just download the M2 RC1 binary 
distribution at 
http://people.apache.org/~ajborley/cpp-1.0-incubator-M2-RC1, 
tuscany_sca_cpp-1.0-incubator-M2-bin.zip  (size = 1.2 Mb) on Windows, or 
tuscany_sca_cpp-1.0-incubator-M2-bin.tar.gz (size = 2.1 Mb) on Linux, 
unpack it, read doc/PythonExtension.html and doc/RubyExtension.html, and 
let us know how we can improve these docs!


This is a new feature and we could also use any feedback on how to 
improve our integration with these languages. Any ideas to make this 
look more Pythonic or Rubyesque is welcome.


Thanks!

Andrew Borley wrote:

Hi everyone,

I have posted candidates for the C++ SCA and SDO M2 release here:

http://people.apache.org/~ajborley/cpp-1.0-incubator-M2-RC1

Please take a look, read the docs, build  run the libraries and
samples  let us know how you find it so that we can either re-spin
the release or vote on it asap.

The website documentation is currently based on the M1 release and
will be re-written to sync with what is in the release.


About Tuscany SCA C++
===

Tuscany SCA C++ provides a runtime implementation for the for the Service
Component Architecture 0.96 Assembly specification and the 0.95 C++ 
Client

 Implementation Model specification, written in C++ and will currently
support C++, Python and Ruby component implementation types.

The specifications can be found at
http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications 



It is possible to interoperate with Tuscany SCA Java via the Web
Service bindings
for services and references but restrictions apply. This is not yet a 
complete

implementation and known restrictions are described below.

Supported SCA Assembly Model features
 *  All features are supported unless listed under the known restrictions
below. See SCA Assembly Model specification.

Supported language bindings
 * Component implementations written in C++. See the SCA C++ Client and
   Implementation Model specification.
 * Component implementations written in Python. See the
doc/PythonExtension.html
   documentation.
 * Component implementations written in Python. See the 
doc/RubyExtension.html

   documentation.
 * Component interfaces described by C++ classes. See SCA Client and
   Implementation Model specification.

Supported service and reference bindings
 * The web service binding is supported. This implementation will support
   web services which using document literal SOAP bindings conforming 
to the

   WS-I basic profile (rpc/encoded is not yet supported).

Known restrictions
 * Local service interfaces cannot use overloaded operations (the SCA
   specification limits remote service interfaces to not using overloaded
   operations).
 * Each WSDL definition for a web service binding must be in a single 
WSDL

   document.
 * No load time validation of the deployed SCA application (run time
   validation only).
 * No metadata API.


About Tuscany SDO for C++
=

Tuscany SDO is an implementation of the Service Data Objects 2.01
specification for C++ developers found at
http://www.osoa.org/display/Main/Service+Data+Objects+Specifications

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
Jean-Sebastien


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]