Re: Binding target information

2007-12-13 Thread Simon Laws
On Dec 13, 2007 12:50 AM, Jean-Sebastien Delfino [EMAIL PROTECTED]
wrote:

 The discussion is getting too long for me to follow, sorry. We
 (including me) should try harder to write shorter emails.

 Simon Laws wrote:
  When processing references at the domain level I need to know the name
 of
  the target service which each reference binding...

 Question: When? are you installing, loading, building, starting, or
 executing an invocation? Can you point to the code that needs to know
 the name...

 Thanks
 --
 Jean-Sebastien

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

 This is the point at which the composites have been started. Two reasons
why bindings need to be identified and have endpoint information updated.

1. The endpoint information is not known in the domain unless it is
explicitly provided by the user. If it isn't provided by the user the nodes
work it out as they run composites and then tell the domain. I.e. each
service binding, during the activation phase, determines what its endpoint
will be based on the various bits of information we discussed previously
[1].

The domain doesn't actually run anything but just builds the model. Each
node builds the runtime model of its composite separately as it has to link
in with the local host environment. The domain doesn't provide the hosts
that the nodes do. We could maybe come up with some pretend host that
applies the url generation rules when the domain is building it's model
based on which node is running the composite being processed but that's not
what happens at the moment.

2. The endpoint information is changed by changes in the domain, for
example, a wire is added or removed. If we can't find a reference binding
and update it and we were to rely on the domain calculating all of the
endpoints then each affected node would have to be restarted whenever such a
change is made.

The code that finds and updates binding information is coming together in
updateComposite in nodeImpl(). It looks across all references and compares
the bindings against the new composite being provided. As per the subject of
this mail the hard part is working out which binding is which. Currently it
only updates the binding URI which is not enough in some cases but I'm just
trying this out at the moment.

Simon


[1] http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg26102.html


Re: How to set a specific data binding to be used by a binding?

2007-12-13 Thread ant elder
I'm using interface.java in my composite so don't have any wsdl in the
code i'm running. You can choose to to use interface.wsdl or
interface.javaas you like right? so ideally I'd like a binding to work
the same either
way.

Is there a reason java interfaces need to produce unwrapped xml by default?

Any pointers to where this is controlled so I could add a way to override
the default to produce wrapped style?

   ...ant

On Dec 13, 2007 12:49 AM, Raymond Feng [EMAIL PROTECTED] wrote:

 Hi,

 Are you using a java interface or do you have the wrapper-style WSDL? For
 a
 java interface, we by default treat it as unwrapped.

 Maybe you can give us more information about the scenario and we can talk
 about more options from there.

 Thanks,
 Raymond

 - Original Message -
 From: ant elder [EMAIL PROTECTED]
 To: tuscany-dev tuscany-dev@ws.apache.org
 Sent: Wednesday, December 12, 2007 3:08 PM
 Subject: Re: How to set a specific data binding to be used by a binding?


  Though this gives unwrapped xml, is there something to set somewhere so
 it
  gives wrapped style xml?
 
...ant
 
  On Dec 12, 2007 5:27 PM, ant elder [EMAIL PROTECTED] wrote:
 
  Thanks!
 
 ...ant
 
 
  On Dec 12, 2007 5:11 PM, Raymond Feng [EMAIL PROTECTED] wrote:
 
   Please use XMLStringDataBinding.NAME instead. The current name is
   java.lang.String but we may change it.
  
   Thanks,
   Raymond
  
   - Original Message -
   From: ant elder [EMAIL PROTECTED]
   To: tuscany-dev tuscany-dev@ws.apache.org
   Sent: Wednesday, December 12, 2007 8:58 AM
   Subject: Re: How to set a specific data binding to be used by a
   binding?
  
  
And a vaguely related supplementary question...what is (or is
 there)
a
data
binding for getting xml text. I thought there was and have been
trying
   to
use xml.string but that doesn't seem to work as
 getTransformerChain
   in
MeadiatorImpl always throws a No path found for the
 transformation:
exception. Do we have a databinding for this?
   
  ...ant
   
On Dec 12, 2007 3:23 PM, ant elder [EMAIL PROTECTED] wrote:
   
I'm probably not going to provide enough information to get much
 of
   an
answer but I'll ask now anyway in case anyone has an obvious
 answer
   right
away...
   
Is there a simple way for a binding to say what data binding it
wants
used?
   
I know there's Interface.resetDataBinding but to use that you need
   the
same Interface object that is used by the
DataBindingRuntimeWireProcessor
when working out if a transformation is required and that doesn't
   seem to
be
the one thats use by the RuntimeComponentReference/Service which
 is
passed
in to a Service or Reference BindingProvider. Even in a simple
   testcase
with
a component using a reference there seems to be about 6 instances
 of
JavaInterface instantiated for the interface class used by the
   reference
so
making sure resetDataBinding is called on the correct one doesn't
   seem
straight forward.
   
   ...ant
   
   
   
   
   
  
  
 
 




Re: Binding target information

2007-12-13 Thread ant elder
On Dec 13, 2007 8:26 AM, Simon Laws [EMAIL PROTECTED] wrote:

snip

Two reasons
 why bindings need to be identified and have endpoint information updated.

 1. The endpoint information is not known in the domain unless it is
 explicitly provided by the user. If it isn't provided by the user the
 nodes
 work it out as they run composites and then tell the domain. I.e. each
 service binding, during the activation phase, determines what its endpoint
 will be based on the various bits of information we discussed previously
 [1].

 [1] http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg26102.html



Perhaps a side issue but the thread thats referenced in [1] was never
concluded though, it just ends with unanswered questions. Would it help if
those issues got resolved?

   ...ant


Re: [DAS] DAS as web service

2007-12-13 Thread Amita Vadhavkar
Further down the road, I tried to insource datagraph.xsd in my .wsdl
definition
like - have xmlns:sdo=commonj.sdo in the definition and import as below -
xsd:import namespace=commonj.sdo schemaLocation=datagraph.xsd/

and the out param of my web service as -
element name=executeQueryResponse
complexType
sequence
element name=executeQueryReturn type=sdo:datagraph /
/sequence
/complexType
/element

and have web service like -
public commonj.sdo.DataGraph executeQuery(DASWrapperImpl dasRef, String
commandName);

But got -
Caused by: org.apache.tuscany.sca.interfacedef.util.FaultException:
org.apache.tuscany.sca.databinding.TransformationException:
org.apache.tuscany.sca.databinding.TransformationException:
com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 2 counts of
IllegalAnnotationExceptions
commonj.sdo.DataGraph is an interface, and JAXB can't handle interfaces.
this problem is related to the following location:
at commonj.sdo.DataGraph
commonj.sdo.DataGraph does not have a no-arg default constructor.
this problem is related to the following location:
at commonj.sdo.DataGraph


With same wsdl (i.e. import datagraph.xsd) and return type as sdo:datagraph
, but changing web service method to return
public org.apache.tuscany.sdo.impl.DataGraphImpl executeQuery(DASWrapperImpl
dasRef, String commandName);

With this I get -
Caused by: org.apache.tuscany.sca.interfacedef.util.FaultException:
org.apache.tuscany.sca.databinding.TransformationException:
org.apache.tuscany.sca.databinding.TransformationException:
com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 12 counts of
IllegalAnnotationExceptions
commonj.sdo.ChangeSummary is an interface, and JAXB can't handle interfaces.
this problem is related to the following location:
at commonj.sdo.ChangeSummary
at public commonj.sdo.ChangeSummary
org.apache.tuscany.sdo.impl.DataGraphImpl.getEChangeSummary()
at org.apache.tuscany.sdo.impl.DataGraphImpl
commonj.sdo.ChangeSummary does not have a no-arg default constructor.
this problem is related to the following location:
at commonj.sdo.ChangeSummary
at public commonj.sdo.ChangeSummary
org.apache.tuscany.sdo.impl.DataGraphImpl.getEChangeSummary()
at org.apache.tuscany.sdo.impl.DataGraphImpl
org.eclipse.emf.ecore.EObject is an interface, and JAXB can't handle
interfaces.

So basically WebService is now happy about DataGraphImpl, but complains for
next place where it sees DataGraphImpl is returning
an interface viz. ChangeSummary.


Is there any way of somehow custom binding DataGraph having ChangeSummary in
WebService to effectively use it
as a out param of a web service? Appreciate any suggestions.

Regards,
Amita

On Dec 13, 2007 1:28 PM, Amita Vadhavkar [EMAIL PROTECTED] wrote:

 I could see that static and dynamic DOs (using xsd:anyType) can be passed
 using web service, but when it comes to DataGraph containing ChangeSummary
 is there a way to pass it as parameter?

 -Amita


 On Nov 14, 2007 6:34 PM, Amita Vadhavkar [EMAIL PROTECTED]
 wrote:

  There is an old thread -
  http://www.mail-archive.com/[EMAIL PROTECTED]/msg01951.html
  I am just trying to continue the discussion here to come up with
  requirement, use cases and a basic implementation.
 
  Standalone DAS can be used by client by having the required jar in
  classpath. By exposing DAS as WebService
  it will be able to
  - have remote multiple clients using same DAS Web Service.
 
  As first attempt - can try to have a basic cycle -
   ...1) initDAS (), 2) create Command, 3) exec Command(), 4) let
  client modify DO, 5) applyChange
  with having the DAS web service tied to one database access.
 
  Later based on use cases, requirements, can make things more flexible.
 
  It may be needed to have session/conversation management - as the
  above steps make meaning in the same session
 
  For this implementation.das type component can have a wsdl binding.
  das config.xsd as well as other static model xsds (like company.xsd..)
  can be refed in the wsdl.
 
  1 initDAS - based on impl.das component's ConnectionInfo can help
  in getting the DB Connection to DAS runtime.
  Also, static model xsds can be made known to DAS at this time.
 
  2 as Command structure is known in config.xsd - it can be used as
  return type of response of createCommand()
 
  3 command.executeQuery() in DAS returns a DO. It may need to be a
  particular DO Type array like Company[].
 
  4 There can be problems in Dynamic DAS approach(i.e. DAS without
  model xsds), as the model is not know before runtime,
  wsdl can not know the complex type to expect as return of
  executeCommand(). There can be workarounds like form model
  based on DB SChema beforehand and use it. But what is the usability 

Re: [DAS] DAS as web service

2007-12-13 Thread Luciano Resende
Looks like you are starting to face some of the same issues I had in
the past... I can see two issues here : Passing Data Graphs and Change
Summary, and ensuring the client (e.g a web 2.0 application) would be
SDO Enabled to handle this data representation and maintain it.

Maybe a better alternative would be to leverage SCA to expose Data
Service CRUD + Query interface utilizing SCA bindigns. We could
leverage some of the work we have been doing on implementation.data
for this and define a interface for SDO or for regular Pojos and use
that interface as the main interface for the Data components.This
would also give us some more flexibility in terms of what
communication protocols would be supported (e.g ws, rmi, jsonrpc, etc)

Well, these are only some initial thoughts, and I'd appreciate input
from others on the community.


On Dec 12, 2007 11:58 PM, Amita Vadhavkar [EMAIL PROTECTED] wrote:
 I could see that static and dynamic DOs (using xsd:anyType) can be passed
 using web service, but when it comes to DataGraph containing ChangeSummary
 is there a way to pass it as parameter?

 -Amita


 On Nov 14, 2007 6:34 PM, Amita Vadhavkar [EMAIL PROTECTED] wrote:

  There is an old thread -
  http://www.mail-archive.com/[EMAIL PROTECTED]/msg01951.html
  I am just trying to continue the discussion here to come up with
  requirement, use cases and a basic implementation.
 
  Standalone DAS can be used by client by having the required jar in
  classpath. By exposing DAS as WebService
  it will be able to
  - have remote multiple clients using same DAS Web Service.
 
  As first attempt - can try to have a basic cycle -
   ...1) initDAS (), 2) create Command, 3) exec Command(), 4) let
  client modify DO, 5) applyChange
  with having the DAS web service tied to one database access.
 
  Later based on use cases, requirements, can make things more flexible.
 
  It may be needed to have session/conversation management - as the
  above steps make meaning in the same session
 
  For this implementation.das type component can have a wsdl binding.
  das config.xsd as well as other static model xsds (like company.xsd..)
  can be refed in the wsdl.
 
  1 initDAS - based on impl.das component's ConnectionInfo can help
  in getting the DB Connection to DAS runtime.
  Also, static model xsds can be made known to DAS at this time.
 
  2 as Command structure is known in config.xsd - it can be used as
  return type of response of createCommand()
 
  3 command.executeQuery() in DAS returns a DO. It may need to be a
  particular DO Type array like Company[].
 
  4 There can be problems in Dynamic DAS approach(i.e. DAS without
  model xsds), as the model is not know before runtime,
  wsdl can not know the complex type to expect as return of
  executeCommand(). There can be workarounds like form model
  based on DB SChema beforehand and use it. But what is the usability of
  this? i.e. Dynamic DAS as Web Service?
 
  5 like in executeQuery() return type is a known type DO, in
  applyChanges(DO) a known type can be passed to DAS for persisting in
  DB.
 
  All the above will need some wrapping around the existing APIs to
  support specific model types passing back and forth.
 
  Please share your thoughts.
 
  Regards,
  Amita
 




-- 
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

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



[jira] Commented: (TUSCANY-1483) Static SDO generator: problem with elements named internal*

2007-12-13 Thread Amita Vadhavkar (JIRA)

[ 
https://issues.apache.org/jira/browse/TUSCANY-1483?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12551485
 ] 

Amita Vadhavkar commented on TUSCANY-1483:
--

Hi David, Please see 
http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg26335.html for example 
XSD with BiDi relation. I have not so far tried it
for this JIRA's issue by modifying property names etc., but may be useful.
Regards,
Amita

 Static SDO generator: problem with elements named internal*
 ---

 Key: TUSCANY-1483
 URL: https://issues.apache.org/jira/browse/TUSCANY-1483
 Project: Tuscany
  Issue Type: Improvement
  Components: Java SDO Tools
Affects Versions: Java-SDO-beta1
Reporter: Daniel Peter
Priority: Minor
 Fix For: Java-SDO-Next

 Attachments: 1483.patch, test1483.xsd


 Hi,
 I run into a problem with the static generated SDOs, when having a xsd with 
 the following two elements:
 xsd:element name=abc type=xsd:integer /
 xsd:element name=internalAbc type=xsd:integer /
 In the generated Impl class this leads twice to the same constant 
 INTERNAL_ABC.
 The xsd elements might simply be renamed in order to avoid this clash, but 
 there might be situations where this is not possible. 
 The generator could use a different, less probable prefix (e.g. ___INTERNAL_).
 Thanks, Daniel.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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



Re: I wish Tuscany would bind TM to JNDI

2007-12-13 Thread Luciano Resende
Mike Edwards wrote:
So, if your intention is to design the TM implementation within Tuscany,
hidden from the end-users, then I can see the attraction, given that
most of the available TM software is based around JNDI.  However, I hope
that this can be hidden under the covers.

I think that Mike is trying to say here that, it's OK to use JNDI, but
as SCA comes to simplify things, this should be hidden. In this other
post [1], it's mentioned a Hibernate scenario :

For example, users who used much of Hibernate. Hibernate is easy to config to
use XA Datasource from JNDI and TM as well. (But tuscany could not host any
implementation of Hibernate).
Does this mean users should have to abandon Hibernate? I'm sure this
is not the
initiation of Tuscany.

If I understood correct what Mike proposed, this scenario is still
valid, the difference is that, it would be responsibility of the
runtime (based on some configuration) to properly retrieve the TM
using JNDI or not, and would make it available to other Tuscany
modules such as implementation types, etc. This is similar to what we
do today with BPEL, except that we are not using JNDI (yet ?)

[1] http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg26385.html


On Dec 12, 2007 5:30 PM, shaoguang geng [EMAIL PROTECTED] wrote:
 Thank you for your reply, Mike:

 I agree with you, your words are correct!

 BUT, problem is: Tuscany needs more users, and Tuscany is not the biggest 
 gold, why users come to Tuscany?  One of the reasons should be adaptability . 
 Users has big lot of technology in use before Tuscany (include JNDI).

 My proposal is just one of the ways that will make users fill easier to come 
 upon Tuscany's framework, Of course, there is better methodology like you 
 addressed here.
 But most of the time, the best is not the most popular.

 Best regard.

 Mike Edwards [EMAIL PROTECTED] wrote: Hi,


 Some thoughts and questions.

 When you talk about making TM easier, are you talking about the
 interface that the end-user see or are you talking about the Tuscany
 developer who is trying to put together this functionality?

 Today, in Java, TM is mostly about JEE and JEE makes heavy use of JNDI.
   However, I have a concern that this is exposed to end-users (ie
 programmers of business applications).  SCA is trying to move away from
 this kind of plumbing in the application to a model where the
 programmer simply asks for what is needed and it is up to the runtime to
 provide the facilities in whatever way it chooses.  That is the
 intent/policySet model.

 So, if your intention is to design the TM implementation within Tuscany,
 hidden from the end-users, then I can see the attraction, given that
 most of the available TM software is based around JNDI.  However, I hope
 that this can be hidden under the covers.


 Yours,  Mike.

 shaoguang geng wrote:
  Hello every one:
 
  I make TM easiser, I think JNDI is the best way.
 
  Please see it that most the java environment provide 2PC TM in a JNDI 
  infrastrusture, and most of the manageable resource such as hibernate and 
  JPA make this work if there is a TM binded in a JNDI.
 
  To hold our TM in Tuscany's registry object just make every thing far from 
  fetching, because XAResource might be used every where, all of them will 
  have to get TM from an input parameter...
 
  So I would suggest at the point of TM initialize, it could check out wether 
  a JNDI exists, and then bind it up on.
 
 
  Thanks.
 
 
 
  -
  Looking for last minute shopping deals?  Find them fast with Yahoo! Search.

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




 -
 Be a better friend, newshound, and know-it-all with Yahoo! Mobile.  Try it 
 now.



-- 
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

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



Re: Release 1.1 - what will be ready for next week?

2007-12-13 Thread ant elder
On Dec 12, 2007 10:03 AM, Simon Laws [EMAIL PROTECTED] wrote:

 On Dec 12, 2007 9:45 AM, Luciano Resende [EMAIL PROTECTED] wrote:

  Following Ant's question, after you cut the first RC, development
  would continue on trunk or on a branch ? Based on the timeframe and
  considering we would still work on issues on the week of Jan 7th, I'd
  recommend continue on trunk until sometime around end of year.
 
  On Dec 12, 2007 12:22 AM, ant elder [EMAIL PROTECTED] wrote:
   I don't think the tomcat deep integration, JMS, or distribution
  structure
   changes would all be done by next week. Haven't seen much happening
 with
   jsonrpc references recently either. We do have all of the rest of this
  year
   to continue development though right?
  
  ...ant
  
  
   On Dec 11, 2007 10:59 PM, Simon Laws [EMAIL PROTECTED]
 wrote:
  
Hi
   
Following on from the JIRA tidy up note here are a few high level
  areas
that
I've seen activity on over the last few weeks and so may be ready to
  go
for
release 1.1.
   
Deep tomcat integration
Better JMS support
JAXB based POJO transformations.
More policy function
Modeling of client side java script components
JSONRPC reference binding
Better support for doman API suggested by assembly spec
Domain based and standalone node operation
Domain lookup for remote access to domain services.
Transactions
JPA
Class loading and OSGI
BPEL fixes
Distribution structure changes
   
Can you fill in the detail and tell me what we can get in,
 i.e.addwhat is
missing from the list, add details to what is on the list, indicate
  what
shouldn't be on the list. Think of this as forming the CHANGES text
 so
  it
should look like [1]. Even better go and update the CHANGES doc:-)
   
As a reminder here is the timeline I'm working to. I'm planning on
spending
next week working on the first RC. Building the distribution, fixing
samples, READMES, licenses etc. The objective being to have a
 release
candidate before I go away for the holidays for people to review at
  their
leisure. This means that when everyone is back we can spend the week
beginning 7th Jan knocking it into shape until we get an RC we can
  vote
on.
The following week, beginning 14th would also be taken up by voting
  with a
view to releasing the week beginning 21st (or earlier if we get
 done).
   
Does that still sound reasonable to everyone. Are there pieces of
  function
that must be in 1.1. that can't be done in this timescale?
   
Regards
   
Simon
   
[1]
   
   
 
 http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/distribution/src/main/release/CHANGES
   
  
 
 
 
  --
  Luciano Resende
  Apache Tuscany Committer
  http://people.apache.org/~lresendehttp://people.apache.org/%7Elresende
 http://people.apache.org/%7Elresende
  http://lresende.blogspot.com/
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
  If people are agreed that any work that gets committed to trunk over the
 Christmas holidays is related to fixing up the content of the release
 candidate contents we finalize next week then I'm happy to keep that
 effort
 going on trunk with a view to cutting the branch including all of the
 fixes
 people have made when I get back on the 2nd Jan. We could hope to use this
 RC0 to catch 90% of the release issues and reduce the pain a little for
 this 90% by allowing the fixes to happen in just one place.

 If people have other projects in mind that take the trunk in a different
 direction then I'll take a branch next week.

 Simon


Doing it next year sounds good to me, i've no plans to start on new stuff
not related to 1.1 over the break but i would find it useful to have that
time to finish things off.

   ...ant


Re: Release 1.1 - what will be ready for next week?

2007-12-13 Thread Simon Laws
On Dec 13, 2007 12:16 PM, ant elder [EMAIL PROTECTED] wrote:

 On Dec 12, 2007 10:03 AM, Simon Laws [EMAIL PROTECTED] wrote:

  On Dec 12, 2007 9:45 AM, Luciano Resende [EMAIL PROTECTED] wrote:
 
   Following Ant's question, after you cut the first RC, development
   would continue on trunk or on a branch ? Based on the timeframe and
   considering we would still work on issues on the week of Jan 7th, I'd
   recommend continue on trunk until sometime around end of year.
  
   On Dec 12, 2007 12:22 AM, ant elder [EMAIL PROTECTED] wrote:
I don't think the tomcat deep integration, JMS, or distribution
   structure
changes would all be done by next week. Haven't seen much happening
  with
jsonrpc references recently either. We do have all of the rest of
 this
   year
to continue development though right?
   
   ...ant
   
   
On Dec 11, 2007 10:59 PM, Simon Laws [EMAIL PROTECTED]
  wrote:
   
 Hi

 Following on from the JIRA tidy up note here are a few high level
   areas
 that
 I've seen activity on over the last few weeks and so may be ready
 to
   go
 for
 release 1.1.

 Deep tomcat integration
 Better JMS support
 JAXB based POJO transformations.
 More policy function
 Modeling of client side java script components
 JSONRPC reference binding
 Better support for doman API suggested by assembly spec
 Domain based and standalone node operation
 Domain lookup for remote access to domain services.
 Transactions
 JPA
 Class loading and OSGI
 BPEL fixes
 Distribution structure changes

 Can you fill in the detail and tell me what we can get in,
  i.e.addwhat is
 missing from the list, add details to what is on the list,
 indicate
   what
 shouldn't be on the list. Think of this as forming the CHANGES
 text
  so
   it
 should look like [1]. Even better go and update the CHANGES doc:-)

 As a reminder here is the timeline I'm working to. I'm planning on
 spending
 next week working on the first RC. Building the distribution,
 fixing
 samples, READMES, licenses etc. The objective being to have a
  release
 candidate before I go away for the holidays for people to review
 at
   their
 leisure. This means that when everyone is back we can spend the
 week
 beginning 7th Jan knocking it into shape until we get an RC we can
   vote
 on.
 The following week, beginning 14th would also be taken up by
 voting
   with a
 view to releasing the week beginning 21st (or earlier if we get
  done).

 Does that still sound reasonable to everyone. Are there pieces of
   function
 that must be in 1.1. that can't be done in this timescale?

 Regards

 Simon

 [1]


  
 
 http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/distribution/src/main/release/CHANGES

   
  
  
  
   --
   Luciano Resende
   Apache Tuscany Committer
   http://people.apache.org/~lresendehttp://people.apache.org/%7Elresende
 http://people.apache.org/%7Elresende
  http://people.apache.org/%7Elresende
   http://lresende.blogspot.com/
  
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
  
   If people are agreed that any work that gets committed to trunk over
 the
  Christmas holidays is related to fixing up the content of the release
  candidate contents we finalize next week then I'm happy to keep that
  effort
  going on trunk with a view to cutting the branch including all of the
  fixes
  people have made when I get back on the 2nd Jan. We could hope to use
 this
  RC0 to catch 90% of the release issues and reduce the pain a little
 for
  this 90% by allowing the fixes to happen in just one place.
 
  If people have other projects in mind that take the trunk in a different
  direction then I'll take a branch next week.
 
  Simon
 

 Doing it next year sounds good to me, i've no plans to start on new stuff
 not related to 1.1 over the break but i would find it useful to have that
 time to finish things off.

   ...ant

I do want to get an RC done next week (from the trunk) which we can all test
with and which I hope shows what we intend to release in 1.1. From past
experience we know that the first time we try to get it all together there
will be many things to fix and things to finish. I wouldn't expect that to
include, for example, inclusion of new modules that we haven't discussed
here or material changes to the structure of the release. The point of this
being that we shouldn't be in 1.1. development mode when January comes round
and that we are focused on getting 1.1 through the release votes with all
the fixing and fiddling we know that entails.

Simon


Re: How to run incremental builds of the Tuscany SCA tree

2007-12-13 Thread Jean-Sebastien Delfino

Luciano Resende wrote:

On Dec 12, 2007 4:44 PM, Raymond Feng [EMAIL PROTECTED] wrote:

Hi,

Beyond performance, I don't think svn stat is good way to handle the case
that the project has been updated from svn but the build is not run yet. I
now ported the timestamp check from the maven-compiler-plugin and it should
give us the capability to be incremental.



Does this mean i can have an incremental build just by executing the
command below, and don't need the markers anymore ?

mvn -o org.apache.tuscany.sca:tuscany-maven-incremental-build:build



Yes
--
Jean-Sebastien

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



Stopping and starting components with web service bindings

2007-12-13 Thread Simon Laws
In the stop() method of the Axis2ServiceClient there is the following...

// close all connections that we have initiated, so that the jetty
server
// can be restarted without seeing ConnectExceptions
HttpClient httpClient =

(HttpClient)serviceClient.getServiceContext().getConfigurationContext()
.getProperty(HTTPConstants.CACHED_HTTP_CLIENT);
if (httpClient != null)

((MultiThreadedHttpConnectionManager)httpClient.getHttpConnectionManager()).shutdown();

However this is not symetrical as the start() method has nothing in it. The
HTTP connection is created in the Axis2ServiceClient I believe. Anyone know
why it is like this?

Thanks

Simon


Re: WorkerService component, was: Remotable interfaces and pass by value

2007-12-13 Thread Simon Laws
On Dec 13, 2007 3:04 PM, Giorgio Zoppi [EMAIL PROTECTED] wrote:

 Jean-Sebastien Delfino ha scritto:
  OK I'm starting to understand. That looks like a pretty useful
  component to have!
 
  One more question, after which I may make some suggestions.
 
  What does the WSDL portType describing your Web Service look like?
 
  Like that?
  definitions...
types
  schema ...
element name=computeTask
  complexType
sequence
  element name=job type=xs:base64Binary/
/sequence
  /complexType
/element
element name=computeTaskResponse
  complexType
sequence
  element name=return type=xs:base64Binary/
/sequence
  /complexType
/element
  /schema
/types
message name=computeTaskRequest
  part name=parameters element=computeTask/
/message
message name=computeTaskResponse
  part name=parameters element=computeTaskResponse/
/message
portType name=WorkerServicePortType
  operation name=computeTask
input message=computeTaskRequest/
output message=computeTaskResponse/
  /operation
/portType
  /definitions
 
  I guessed the above as you said you were flowing base64 encoded bytes,
  and I didn't know what your WorkerManager interface looked like so
  assumed it was like your WorkerService.
 
  Or something else?
 
 Hi,
 I don't know how it's my WSDL, because it's automatically generated by
 Tuscany Runtime whereas I use binding-sca-axis2 module, but the
 WorkerService and the WorkerManager have different interfaces. By now
 jobs are sent by my custom binding which uses xstream, so a lot of xml
 serialization, but it's going to change due performance problems
 inherent to xml. The WorkerManager has the task to control a group of
 worker components in a node. So its business intefaces looks like that:
 import org.apache.tuscany.sca.core.context.CallableReferenceImpl ;
 import org.osoa.sca.annotations.Remotable;

 @Remotable
 public interface WorkerManager  {
CallableReferenceImplWorkerService addWorker();
boolean removeWorker(String workerName);
boolean removeWorkers(int k);
boolean removeAllWorkers();
double getNodeLoad();
int activeWorkers();
void start();
 }

 You can add one or more components at runtime with the composite updater
 ad then give away to the WorkpoolManager its CallableReference (i use
 CallableReferenceImpl because my Tuscany runtime is not current patched
 svn, but an old one).  I'll show you a common use case:
 Use case 1:  The WorkpoolManager's  polls different WorkerManagers in a
 SCA domain, then it collects all nodes load with getNodeLoad(), if these
 loads break some rule in the WorkpoolManager's engine. For example if
 the system is run down, then the WorkpoolManager could add a new
 worker by selecting a node, invoking its WorkerManager and adding a new
 Worker Component at runtime on that node. After that, the
 WorkpoolManager receives from that node's WorkerManager, a
 CallableReference and it sends that reference to the WorkpoolService
 which has the following interface:
 @Remotable
 public interface WorkpoolService {
   @OneWay
   void submit(Job i);
   double getServiceTime();
   @OneWay
   void PostWorkerName(String referenceName);
   @OneWay
   void PostWorkerReference(CallableReferenceImplWorkerService worker);
   void start();
   @OneWay
   void handleResult(Job j, boolean reuse,
 CallableReferenceImplWorkerService worker);
  }

 In this case it uses a PostWorkerReference. In this interface you also
 notice handleResult and PostWorkerName, this are my two hacks because i
 wasn't able to inject dynamically a new component reference throught the
 WorkpoolManager, so I use PostWorkerReference instead of the
 PostWorkerName and handleResult instead of standard Tuscany Callbacks.
 That's all hope it helps.
 Cheers,
 Giorgio.




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

 Hi Giorgio. As you know I think we should get this checked in as an
sca/demo (is that the right place?). Are you happy that 1907 and 1863 are in
a suitable state to do that. We don't have to include it in the build
necessarily but it would be good if we can check out the code and look at
it.

It would be interesting (to me at least ;-) to see how the domain could
handle some of the issues of deploying the new components for you. I'm
wondering if you could  split the function of the WorkManager in two

1/ A component that you use that to determine information about the load of
the node. In fact we could reuse the WorkManager component/service as part
of the set of node management services.

2/ When you need a new Worker component on a node use the domain services to
start a new composite there containing the component. The composite could be
created on the fly. We need two 

Re: Stopping and starting components with web service bindings

2007-12-13 Thread Giorgio Zoppi

Simon Laws ha scritto:

In the stop() method of the Axis2ServiceClient there is the following...

// close all connections that we have initiated, so that the jetty
server
// can be restarted without seeing ConnectExceptions
HttpClient httpClient =

(HttpClient)serviceClient.getServiceContext().getConfigurationContext()
.getProperty(HTTPConstants.CACHED_HTTP_CLIENT);
if (httpClient != null)

((MultiThreadedHttpConnectionManager)httpClient.getHttpConnectionManager()).shutdown();

However this is not symetrical as the start() method has nothing in it. The
HTTP connection is created in the Axis2ServiceClient I believe. Anyone know
why it is like this?

  
I know, that the line httpClient...with a cached http client, was 
introduced for solving the Async Call invocations problem, see JIRA 1804.

Cheers,
Giorgio.

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



Re: How to run incremental builds of the Tuscany SCA tree

2007-12-13 Thread Raymond Feng

Yes, that's right.

Thanks,
Raymond

- Original Message - 
From: Luciano Resende [EMAIL PROTECTED]

To: tuscany-dev@ws.apache.org
Sent: Thursday, December 13, 2007 4:04 AM
Subject: Re: How to run incremental builds of the Tuscany SCA tree



On Dec 12, 2007 4:44 PM, Raymond Feng [EMAIL PROTECTED] wrote:

Hi,

Beyond performance, I don't think svn stat is good way to handle the case
that the project has been updated from svn but the build is not run yet. 
I
now ported the timestamp check from the maven-compiler-plugin and it 
should

give us the capability to be incremental.



Does this mean i can have an incremental build just by executing the
command below, and don't need the markers anymore ?

mvn -o org.apache.tuscany.sca:tuscany-maven-incremental-build:build


http://svn.apache.org/viewvc?rev=603783view=rev

Thanks,
Raymond

- Original Message -
From: Jean-Sebastien Delfino [EMAIL PROTECTED]
To: tuscany-dev@ws.apache.org

Sent: Wednesday, December 12, 2007 3:49 PM
Subject: Re: How to run incremental builds of the Tuscany SCA tree


 Jean-Sebastien Delfino wrote:
 Raymond Feng wrote:
 Hi,

 I tried the plugins and it works well.

 I also made the following improvements:

 1) Integrate the plugin with maven scm capability, i.e. use APIs to 
 call
 svn status to detect if there are any local changes against SVN 
 repo.

 (Pretty fast for a single module).

 Any idea of how long it takes if you run it from the top of the tree?


 I tried it myself. Svn status on each module takes too long, defeating 
 the

 purpose of the plugin.

 If you don't want to create .modified marker files, you can compare the
 timestamps of the source files + pom.xml and the timestamp of a marker
 file that the plugin can create under the target directory to record 
 when

 it was run.

 You could also check the timestamps of .class files and the .war or 
 .jar

 files but that assumes more knowledge of the structure of the module.
 --
 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]






--
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

-
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]



Re: How to run incremental builds of the Tuscany SCA tree

2007-12-13 Thread Daniel Kulp

That's pretty cool.   Any thoughts about submitting that to the maven 
team?

Dan


On Thursday 13 December 2007, Raymond Feng wrote:
 Yes, that's right.

 Thanks,
 Raymond

 - Original Message -
 From: Luciano Resende [EMAIL PROTECTED]
 To: tuscany-dev@ws.apache.org
 Sent: Thursday, December 13, 2007 4:04 AM
 Subject: Re: How to run incremental builds of the Tuscany SCA tree

  On Dec 12, 2007 4:44 PM, Raymond Feng [EMAIL PROTECTED] wrote:
  Hi,
 
  Beyond performance, I don't think svn stat is good way to handle
  the case that the project has been updated from svn but the build
  is not run yet. I
  now ported the timestamp check from the maven-compiler-plugin and
  it should
  give us the capability to be incremental.
 
  Does this mean i can have an incremental build just by executing the
  command below, and don't need the markers anymore ?
 
  mvn -o org.apache.tuscany.sca:tuscany-maven-incremental-build:build
 
  http://svn.apache.org/viewvc?rev=603783view=rev
 
  Thanks,
  Raymond
 
  - Original Message -
  From: Jean-Sebastien Delfino [EMAIL PROTECTED]
  To: tuscany-dev@ws.apache.org
 
  Sent: Wednesday, December 12, 2007 3:49 PM
  Subject: Re: How to run incremental builds of the Tuscany SCA tree
 
   Jean-Sebastien Delfino wrote:
   Raymond Feng wrote:
   Hi,
  
   I tried the plugins and it works well.
  
   I also made the following improvements:
  
   1) Integrate the plugin with maven scm capability, i.e. use
   APIs to call
   svn status to detect if there are any local changes against
   SVN repo.
   (Pretty fast for a single module).
  
   Any idea of how long it takes if you run it from the top of the
   tree?
  
   I tried it myself. Svn status on each module takes too long,
   defeating the
   purpose of the plugin.
  
   If you don't want to create .modified marker files, you can
   compare the timestamps of the source files + pom.xml and the
   timestamp of a marker file that the plugin can create under the
   target directory to record when
   it was run.
  
   You could also check the timestamps of .class files and the .war
   or .jar
   files but that assumes more knowledge of the structure of the
   module. --
   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]
 
  --
  Luciano Resende
  Apache Tuscany Committer
  http://people.apache.org/~lresende
  http://lresende.blogspot.com/
 
  
 - 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]



-- 
J. Daniel Kulp
Principal Engineer
IONA
P: 781-902-8727C: 508-380-7194
[EMAIL PROTECTED]
http://www.dankulp.com/blog

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



Re: Binding target information

2007-12-13 Thread Jean-Sebastien Delfino

ant elder wrote:

On Dec 13, 2007 8:26 AM, Simon Laws [EMAIL PROTECTED] wrote:

snip

Two reasons

why bindings need to be identified and have endpoint information updated.

1. The endpoint information is not known in the domain unless it is
explicitly provided by the user. If it isn't provided by the user the
nodes
work it out as they run composites and then tell the domain. I.e. each
service binding, during the activation phase, determines what its endpoint
will be based on the various bits of information we discussed previously
[1].

[1] http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg26102.html




Perhaps a side issue but the thread thats referenced in [1] was never
concluded though, it just ends with unanswered questions. Would it help if
those issues got resolved?

   ...ant



Sorry, I really thought I had replied to thread [1], but that's probably 
one of the few emails that didn't go through when I switched my gmail 
config to imap and a different smtp server 2 weeks ago - trying to make 
my email account more iphone friendly :)


I just posted a response to [1] again.
--
Jean-Sebastien

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



Re: Policy Handlers ?

2007-12-13 Thread Venkata Krishnan
Hi,

I've tried to add JAAS based 'authentication' to the security policies.  I
apologize for making this mail very long.

Here is a overview of what I did...

- JAAS depends on something called LoginModule and LoginConfiguration.  I
have assumed that this will be taken care of by the applications.
- Our SCA runtime's role comes in where we perform the authentication
function.  The authentication must interface with the JAAS infrastructure
and us the JAAS APIs such as the LoginContext.login().  I encapsulated this
logic into a PolcyHandler which I have created in out policy-security.
- I have then mapped this handler to a policyset name and this mapping is
put in the services file of the java-runtime module
- I then went up to the impl-policies sample, added a jaasAuthentication and
jaasPolicySet to the definitions.xml.  Then I specified 'jaasAuthentication'
as a requirement for the AddServiceComponent's implementation.

I am continuing to use the RuntimeWireProcessor to add the PolicyHandling
Interceptor for handling polices along the invocation chain.  Here are some
observations...

- The services file that maps policyhandlers to policysets must move out of
the java-runtime and be defined in the individual policy domain modules..
such as policy-security or policy-transaction.   Sebastien and Raymond has
already suggested this.

- The policyhanders need to be mapped to 'policy types' and not policysets.
i.e. every policy handler has two things - 1) the policies (or policy
structure) that it can make sense out of and 2) the QoS infrastructure with
which it can interface.  For now I could say that 'policytypes' are
determined by the classnames that capture those policy models.  But then,
assume there is WS-Policy that we may be able to use for security and
reliability and assume we have a policy handler that can deal with WS-Policy
models, passing a WS-Policy object to the handler will not suffice.  We also
need to say if this the policy is for security or reliability.  I hope that
the policy handlers can decipher a bit of this by studying the model passed.

- there seems to be a need to order the policy-handlers for their invocation
and also make some conditions around their execution such as... should a
hander continue to execute if the prev. one has failed and so on.   In the
sample I used, I had the logger and the jaasAuth policies and the logger
handler continued to execute even when the authenticaion handler had
failed.  Maybe its fine for the logger since the failed ends up getting
logged, but wonder if this would be ok if we had transaction along with
authentication.

- finally the user identity, in this just about the user name and password
need to flow along.  Right now I am using a callback handler that returns
these to the JaasLoginModule.  But in a real scenario I'd expect that the
invocation chains bring along this information.  Or alternatively the client
dumps this sort of info somewhere and the server picks that up.  Even there
the client might have to pass some key to that info.

I'll check this in after making changes to the policyhanlders services
file.

Thanks

On Dec 5, 2007 7:22 AM, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:

 Raymond Feng wrote:
  Hi,
 
  Let's take the transaction policy as an example to understand the
  responsibilities of the players.
 
  Assuming the following intents are declared against the binding or
  implementation types, what code are needed to enforce the semantics?
 
   Intent   Binding/Implementation
  Type
   --
  -
  1.  managedTransaction.globalimplementation.java
  2.  managedTransaction.globalimplementation.bpel
  3.  suspendsTransaction a reference or service with
  binding.sca (local in-VM case)
  4.  suspendsTransaction a reference with binding.ws
  5.  propagatesTransaction  a reference with binding.ws
  6.  propagatesTransaction  a service with binding.ws
 
  In case 1  2, an transaction interceptor can be added to the
 invocation.
  The interceptor interacts with the transaction manager to make sure a
  global
  transaction is demarcated before the control hits the component
  implementation. The interceptor can be independent of the implementation
  types.
 
  In case 3  4, an transaction interceptor can be added to the invocation
 to
  suspend the current transaction before delegating to the next invoker
 and
  resume the transaction after the control is returned.
 
  In case 5, the binding.ws provider will have to deal with
  WS-AtomicTransaction to make sure the transaction context can be
 propagated
  over the SOAP protocol.
 
  In case 6, if there is an incoming transaction from the WS-AT, the
  binding.ws provider will need to import the transaction.
 
  It seems that the logic that enforces the intents could be a joint
  effort of
  a policy interceptor 

Re: How to set a specific data binding to be used by a binding?

2007-12-13 Thread Raymond Feng

Hi,

Are you trying to handle the case below?

1) The reference has a java interface and the source component calls a 
method such as String op(String str, int i);
2) And you try create a XML text as oparg0Str/arg0arg110/arg1/op 
and use it as the body for the JMSMessage.


The JMS binding is special since it doesn't define the structure of the 
message for application data. The binding provider needs to decide the wire 
format. Let's assume we use the wrapper-style XML for now.


If you want to have the databinding transformer to handle the wrapping, then 
you probably need to generate a WSDL from the java interface and use the 
WSDL as the binding interface contract. This way, the interceptor will take 
care of the data transformation and wrapping. The JMS binding code will 
receive the wrapper.


Anthoer way you could do is to set the databinding to DOM or AXIOM. The 
databinding interceptor will pass you an array of elements corresponding to 
the java arguments.  You can then create the wrapper from the child args 
when it reaches the JMS binding code.


Thanks,
Raymond

- Original Message - 
From: ant elder [EMAIL PROTECTED]

To: tuscany-dev tuscany-dev@ws.apache.org
Sent: Thursday, December 13, 2007 12:50 AM
Subject: Re: How to set a specific data binding to be used by a binding?



I'm using interface.java in my composite so don't have any wsdl in the
code i'm running. You can choose to to use interface.wsdl or
interface.javaas you like right? so ideally I'd like a binding to work
the same either
way.

Is there a reason java interfaces need to produce unwrapped xml by 
default?


Any pointers to where this is controlled so I could add a way to override
the default to produce wrapped style?

  ...ant

On Dec 13, 2007 12:49 AM, Raymond Feng [EMAIL PROTECTED] wrote:


Hi,

Are you using a java interface or do you have the wrapper-style WSDL? For
a
java interface, we by default treat it as unwrapped.

Maybe you can give us more information about the scenario and we can talk
about more options from there.

Thanks,
Raymond

- Original Message -
From: ant elder [EMAIL PROTECTED]
To: tuscany-dev tuscany-dev@ws.apache.org
Sent: Wednesday, December 12, 2007 3:08 PM
Subject: Re: How to set a specific data binding to be used by a binding?


 Though this gives unwrapped xml, is there something to set somewhere so
it
 gives wrapped style xml?

   ...ant

 On Dec 12, 2007 5:27 PM, ant elder [EMAIL PROTECTED] wrote:

 Thanks!

...ant


 On Dec 12, 2007 5:11 PM, Raymond Feng [EMAIL PROTECTED] wrote:

  Please use XMLStringDataBinding.NAME instead. The current name is
  java.lang.String but we may change it.
 
  Thanks,
  Raymond
 
  - Original Message -
  From: ant elder [EMAIL PROTECTED]
  To: tuscany-dev tuscany-dev@ws.apache.org
  Sent: Wednesday, December 12, 2007 8:58 AM
  Subject: Re: How to set a specific data binding to be used by a
  binding?
 
 
   And a vaguely related supplementary question...what is (or is
there)
   a
   data
   binding for getting xml text. I thought there was and have been
   trying
  to
   use xml.string but that doesn't seem to work as
getTransformerChain
  in
   MeadiatorImpl always throws a No path found for the
transformation:
   exception. Do we have a databinding for this?
  
 ...ant
  
   On Dec 12, 2007 3:23 PM, ant elder [EMAIL PROTECTED] wrote:
  
   I'm probably not going to provide enough information to get much
of
  an
   answer but I'll ask now anyway in case anyone has an obvious
answer
  right
   away...
  
   Is there a simple way for a binding to say what data binding it
   wants
   used?
  
   I know there's Interface.resetDataBinding but to use that you 
   need

  the
   same Interface object that is used by the
   DataBindingRuntimeWireProcessor
   when working out if a transformation is required and that doesn't
  seem to
   be
   the one thats use by the RuntimeComponentReference/Service which
is
   passed
   in to a Service or Reference BindingProvider. Even in a simple
  testcase
   with
   a component using a reference there seems to be about 6 instances
of
   JavaInterface instantiated for the interface class used by the
  reference
   so
   making sure resetDataBinding is called on the correct one doesn't
  seem
   straight forward.
  
  ...ant
  
  
  
  
  
 
 









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



Re: Using security policies in the Bigbank scenario, was Re: Policy Framework Scenarios.

2007-12-13 Thread Jean-Sebastien Delfino

Venkata Krishnan wrote:

Hi,

Heres what I am intending to do for the secure-bigbank into which I have
copied over the exiting calculator, stockquote and account demos into
secure-bigbank...

- The Calculator and StockQuote services need to exchange data that cannot
be tampered with since the AccountService heavily 'relies' on their
results.  So interaction with these two services should have 'integrity'.  I
don't think there is a need for authentication or confidentiality for the
interactions with these services.
- The AccountData service is right now accessed only by the AccountService.
I'd like to open this out and put in the following security constraints :-
- just keep authentication when accessed from the AccoutService
locally say over binding.sca
   - enforce authentication, confidentiality and integrity when accessed
from outside say over binding.ws
- Finally the AccountService should enforce authentication, confidentiality
and integrity.

Does this sound ok ?

After an iteration with interaction policies, I'll start working on some
implementation policies.  For example having 'authorization' enforced on the
AccountDataService's operations.

Thanks

- Venkat



I took a look at secure-bigbank. It's a good start which helps 
understand how to use the policy framework, and triggers some questions:


- The accountDataService reference is bound to 8084, while the 
AccountDataService is bound to 8085? aren't they supposed to be wired 
together?


- Why did you need two authentication and wsAuthentication intents? is 
it because you needed different policy sets on the client and service side?


- Did you have to change the WS binding code to support your new user 
defined wsAuthentication intent?


- Is there a way to not repeat the core intents defined by the spec in 
all contributions?


- Where are the bindingType definitions listing the intents provided by 
the bindings?


- What are the security callback handlers responsible for?

Thanks
--
Jean-Sebastien

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



What happened to implementation-data?

2007-12-13 Thread Jean-Sebastien Delfino
Looks like it has been removed, breaking the store tutorial that I'm 
working on.


Or maybe renamed to implementation-data-xml? but then that module 
contains provider factories and runtime code and it's inconsistent with 
the other *-xml modules.


For now I'm going to create an implementation-data-api module containing 
only the Collection API which was in implementation-data before, to fix 
the store tutorial at least without adding dependencies on anything else.

--
Jean-Sebastien

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



Re: What happened to implementation-data?

2007-12-13 Thread Jean-Sebastien Delfino

Douglas Leite wrote:

Luciano has told me about the creation of many kinds of implementation-data,
like impl-data-xml, impl-data-pojo, impl-data-jpa.



many kinds of implementation-data sounds scary.

As an application developer why would I have to pick different 
implementation types for components that wrap data access?


--
Jean-Sebastien

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



Improving the store tutorial module structure

2007-12-13 Thread Jean-Sebastien Delfino
The store module is starting to contain too many variations of the 
online store composition so I'm going to refactor it into modules for 
the different variations, like was already done for store-eu:

- store-merger
- store-db
- store-supplier
etc.

I'll try to leverage SCA contribution imports to share implementation 
assets between the modules. That'll be fun :)


I'd like to also rename some of the modules:
- catalog-ejb - veggie-ejb
- catalog-jse - fruits-webapp
- catalog-jee - (not sure yet)
to help visualize/differentiate the parts of the online store solution.
--
Jean-Sebastien

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



Re: How to run incremental builds of the Tuscany SCA tree

2007-12-13 Thread Raymond Feng
Just try to document the status of our incremental build plugin, there is 
one known issue to deal with pom projects (type=pom).


1) We need to find a way to detect if the pom.xml has been changed. There is 
no archive produced by this type of project. We may have to check if the pom 
in local maven repo is newer or not.


2) The maven invoker doesn't support non-recursive mode yet (mvn -N). As a 
result, we cannot simply run the mvn install command on the pom project. 
We can either request the maven invoker to support the non-recursive flag or 
we can try to call the maven installer directly.


Thanks,
Raymond

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

To: tuscany-dev@ws.apache.org
Sent: Thursday, December 13, 2007 5:05 PM
Subject: Re: How to run incremental builds of the Tuscany SCA tree



Daniel Kulp wrote:
That's pretty cool.   Any thoughts about submitting that to the maven 
team?


Dan



I had started with posts [1],[2] to the Maven list. The only response I 
got [3] gave me a good laugh, the next logical step was to write the 
plugin :)


I'd suggest to use and mature the plugin a bit then see if they are open 
to revisit their This is by design not what Maven does statement.


[1] http://www.mail-archive.com/[EMAIL PROTECTED]/msg76335.html
[2] http://www.mail-archive.com/[EMAIL PROTECTED]/msg76622.html
[3] http://www.mail-archive.com/[EMAIL PROTECTED]/msg77059.html
--
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]



Re: How to run incremental builds of the Tuscany SCA tree

2007-12-13 Thread Jean-Sebastien Delfino

Daniel Kulp wrote:
That's pretty cool.   Any thoughts about submitting that to the maven 
team?


Dan



I had started with posts [1],[2] to the Maven list. The only response I 
got [3] gave me a good laugh, the next logical step was to write the 
plugin :)


I'd suggest to use and mature the plugin a bit then see if they are open 
to revisit their This is by design not what Maven does statement.


[1] http://www.mail-archive.com/[EMAIL PROTECTED]/msg76335.html
[2] http://www.mail-archive.com/[EMAIL PROTECTED]/msg76622.html
[3] http://www.mail-archive.com/[EMAIL PROTECTED]/msg77059.html
--
Jean-Sebastien

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



Do domain-level wires work with binding.ws?

2007-12-13 Thread Jean-Sebastien Delfino

Can I now do this:

reference name=vegetableCatalog
  target=CloudVegetableCatalogService
  binding.ws/
/reference

and get the WS binding configured automatically from the target like it 
has been working with binding.sca?


Thanks
--
Jean-Sebastien

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



Exception in SCADomainProxyImpl.registerNodeStart(...)

2007-12-13 Thread Jean-Sebastien Delfino

From the store tutorial modules (SVN r604081) I'm starting:
1. cloud/launch.LaunchCloud
2. store/launch.LauchStore

and getting this exception:

Exception in thread main org.apache.tuscany.sca.node.NodeException
at 
org.apache.tuscany.sca.node.impl.SCANodeImpl.start(SCANodeImpl.java:286)
at launch.LaunchStore.main(LaunchStore.java:40)
Caused by: java.lang.reflect.UndeclaredThrowableException
at $Proxy12.registerNodeStart(Unknown Source)
	at 
org.apache.tuscany.sca.node.impl.SCADomainEventServiceProxyImpl.registerNodeStart(SCADomainEventServiceProxyImpl.java:82)

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:597)
	at 
org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke(JavaImplementationInvoker.java:105)
	at 
org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:52)
	at 
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:249)
	at 
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:146)

at $Proxy12.registerNodeStart(Unknown Source)
	at 
org.apache.tuscany.sca.node.impl.SCADomainProxyImpl.registerNodeStart(SCADomainProxyImpl.java:409)

at 
org.apache.tuscany.sca.node.impl.SCANodeImpl.start(SCANodeImpl.java:284)
... 1 more
Caused by: org.apache.tuscany.sca.interfacedef.util.FaultException: unknown
	at 
org.apache.tuscany.sca.binding.ws.axis2.Axis2BindingInvoker.invoke(Axis2BindingInvoker.java:79)
	at 
org.apache.tuscany.sca.core.databinding.wire.DataTransformationInterceptor.invoke(DataTransformationInterceptor.java:74)
	at 
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:249)
	at 
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:146)

... 14 more

I'm stuck not sure what's breaking SCADomainProxyImpl, any idea?
--
Jean-Sebastien

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



Help: CppCalculator CPPImplementation

2007-12-13 Thread Adriano Crestani
Hi, when I try to run the cppcalculator sample I get the following
exception:

5380:5972 Unsupported implementation type:
  http://www.osoa.org/xmlns/sca/1.0#CPP
  Implementation
  calculator_client: exception caught: Exception
   Class:   SystemConfigurationException
   Description: Implementation type not supported:
  http://www.osoa.org/xmlns/s
  ca/1.0#CPPImplementation
   Origin:
 File:
  E:\Adriano\Faculdade\Tuscany\Native_Release\cpp\sca\runtime\
  core\src\tuscany\sca\model\ModelLoader.cpp
 Line:381
 Function:tuscany::sca::model::ModelLoader::addComponent
   Path:
 File:
  E:\Adriano\Faculdade\Tuscany\Native_Release\cpp\sca\runtime\ex
  tensions\cpp\src\osoa\sca\CompositeContext.cpp
 Line:  101
 Function:  osoa::sca::CompositeContext::getCurrent


How do I enable the CPPImplementation? I've already added the cpp lib dir to
my path  var.

Thanks in advance,
Adriano Crestani