Re: Policy Attachments Resolution in the Assembly Model

2007-08-09 Thread Venkata Krishnan
Not sure I understand this.   I guess its to do with the
ExtensibleURLArtifactProcessor that strips off the extension and
searches for processors only by those extensions.  So even if the
URLArtifactProcessor.getArtifactType() returned 'definitions.xml' we'd
still have a problem.  I guess we have to designate some files as
configuration files that have specific designated processors.  When
the contribution service picks up these files it must invoke the
corresponding artifact processors and in all other cases - for
application artifacts it could go by what its going currently.  Makes
sense ?

- Venkat


On 8/8/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:
 [snip]
 Venkata Krishnan wrote:
  Hi Sebastien, thanks.  I've figured out all of this already :)  Just
  the one hanging thing - the definitions.xml is an artifact that might
  have to be picked up by the contribution service.  While processors
  for all other documents could be found by their unique extensions such
  as .composte or .constrainingType its a bit of a trouble with
  definitions.xml, the extension .xml being generic.
 
  Could we extend the logic in ExtensibleURLArtifactProcessor.read to
  first look at extensions and if not found try with the name of the
  file ?  So the principle is - search for processors either by
  extensions or by the file name for specific kind of documents.  I sort
  of feel a bit clumsy about this approach - whats an alternative that
  could be cleaner ?
 
  Thanks
 
 
 
 Here's a simple change to make this cleaner:

 Instead of URLArtifactProcessor.getType() returning
 .composite for *.composite files
 definition.xml for definition.xml files

 URLArtifactProcessor.getType() could return
 *.composite for *.composites files
 definitions.xml for definition.xml

 Thoughts?

 --
 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: Policy Attachments Resolution in the Assembly Model

2007-08-09 Thread Luciano Resende
Cool, if you can wait a day, i can take a look at that...

Sebastien suggestion seems ok:

Instead of URLArtifactProcessor.getType() returning
.composite for *.composite files
definition.xml for definition.xml files

URLArtifactProcessor.getType() could return
*.composite for *.composites files
definitions.xml for definition.xml

But I guess we also need to change the logic on the algorithm that
checks for the right processor to be used, as it's now just checking
the file extension.


On 8/8/07, Venkata Krishnan [EMAIL PROTECTED] wrote:
 Yes Luciano, that's what I am suggesting.

 - Venkat

 On 8/8/07, Luciano Resende [EMAIL PROTECTED] wrote:
  Could we extend the logic in ExtensibleURLArtifactProcessor.read to
  first look at extensions and if not found try with the name of the
  file ?  So the principle is - search for processors either by
  extensions or by the file name for specific kind of documents.  I sort
  of feel a bit clumsy about this approach - whats an alternative that
  could be cleaner ?
 
  Not sure i got this right, but are you asking for the ability to
  register artifactProcessors by fileName as well as extension ?
 
 
  On 8/8/07, Venkata Krishnan [EMAIL PROTECTED] wrote:
   Hi Sebastien, thanks.  I've figured out all of this already :)  Just
   the one hanging thing - the definitions.xml is an artifact that might
   have to be picked up by the contribution service.  While processors
   for all other documents could be found by their unique extensions such
   as .composte or .constrainingType its a bit of a trouble with
   definitions.xml, the extension .xml being generic.
  
   Could we extend the logic in ExtensibleURLArtifactProcessor.read to
   first look at extensions and if not found try with the name of the
   file ?  So the principle is - search for processors either by
   extensions or by the file name for specific kind of documents.  I sort
   of feel a bit clumsy about this approach - whats an alternative that
   could be cleaner ?
  
   Thanks
  
   - Venkat
  
   On 8/8/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:
Venkata Krishnan wrote:
 Hi,

 Now that I have the  basic policy model in place I am trying to link
 up this with the assembly model now.

 The policy intents and policy sets applicable for a domain are defined
 in the definitions.xml.  There is a SCADefinitions processor that
 deals with reading and resolving the intents and policysets in the
 definitions.xml.  The SCADefinitions processor has a model resolver
 into which the the various policy intents and policy sets that are
 read get added.  All  of this is a part of the policy-xml module.

 Now looking into the aspect of dealing with the 'attachments' of
 policy intents and policy sets into various SCA constructs, I see
 there is a need to resolve the intents and policysets with those that
 have been read from the definitions.xml.  This means an artifact
 processor such as the CompositeProcessor needs to be passed a resolver
 that has the various policy intents and policy sets in it.

 Now the question is, do we assume that we use the same resolver that
 is used to add up the read sca contructs is used to also add the
 policy intents and policysets ?

 or...

 Going by the discussion in
 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg19069.html, I
 am given to understand that its best to keep all of the things related
 to policies - the processor, the resolver etc. separate from those
 that we have for the assembly model.  If this is the case then the
 CompositeProcessor, the ConstrainingType Processor etc. all have to be
 set with the instance of a SCADefinitionsResolver that will be used to
 resolve to policy related things.

 Could somebody please help me with some perspectives on which one of
 the above two is better to follow?

 Thanks

 - Venkat


   
I think we can follow the same pattern as implementations, bindings, 
etc:
- In CompositeProcessor.resolve(model, resolver), call
resolver.resolveModel(policyToResolve) to resolve an unresolved policy
model object, then attach the resolved policy to the composite.
- In your policy-xml module, provide a PolicyModelResolver and register
it in the ModelResolverExtensionPoint. PolicyModelResolver will handle
the resolution of Policy model objects (by qname I guess). Look for
CompositeModelResolver for an example of a ModelResolver.
   
--
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]
  
  
 
 
  --
  

[jira] Assigned: (TUSCANY-1518) Insufficient error message, Pass-by-value not allowed on this object

2007-08-09 Thread Venkatakrishnan (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1518?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Venkatakrishnan reassigned TUSCANY-1518:


Assignee: Venkatakrishnan

 Insufficient error message,  Pass-by-value not allowed on this object
 ---

 Key: TUSCANY-1518
 URL: https://issues.apache.org/jira/browse/TUSCANY-1518
 Project: Tuscany
  Issue Type: Bug
  Components: Java SCA Problem Determination
Reporter: Rashmi Hunt
Assignee: Venkatakrishnan

 Insufficient error message by Tuscany,  Pass-by-value not allowed on this 
 object
 On a remotable service interface, if user makes a mistake of passing a java 
 type as parameter which is not serializable, Tuscany throws an 
 exception Pass-by-value not allowed on this object. This message is 
 insufficient since user will not be able to understand that the real issue
 is parameter is not a serilizable type. Better message could be Paramater 
 xxx is not serializable. Pass-by-value not allowed on this object
 This exception is  thrown from 
 org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding.copy() 
 method , line number 78

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



[jira] Commented: (TUSCANY-1496) Simplify the callback handling in the core by treating the callback as a special service on the reference side and a special reference on the service side

2007-08-09 Thread Raymond Feng (JIRA)

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

Raymond Feng commented on TUSCANY-1496:
---

Patch applied under r564107. Thank you, Simon.

 Simplify the callback handling in the core by treating the callback as a 
 special service on the reference side and a special reference on the service 
 side
 --

 Key: TUSCANY-1496
 URL: https://issues.apache.org/jira/browse/TUSCANY-1496
 Project: Tuscany
  Issue Type: Improvement
  Components: Java SCA Core Runtime
Affects Versions: Java-SCA-Next
Reporter: Raymond Feng
 Attachments: patch1


 Please see the ML thread @ 
 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg20555.html

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



[jira] Resolved: (TUSCANY-1518) Insufficient error message, Pass-by-value not allowed on this object

2007-08-09 Thread Venkatakrishnan (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1518?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Venkatakrishnan resolved TUSCANY-1518.
--

Resolution: Fixed

The exception message will now include the the class name of the argument that 
is not Serializable.  Fixed in r564108.

 Insufficient error message,  Pass-by-value not allowed on this object
 ---

 Key: TUSCANY-1518
 URL: https://issues.apache.org/jira/browse/TUSCANY-1518
 Project: Tuscany
  Issue Type: Bug
  Components: Java SCA Problem Determination
Reporter: Rashmi Hunt
Assignee: Venkatakrishnan

 Insufficient error message by Tuscany,  Pass-by-value not allowed on this 
 object
 On a remotable service interface, if user makes a mistake of passing a java 
 type as parameter which is not serializable, Tuscany throws an 
 exception Pass-by-value not allowed on this object. This message is 
 insufficient since user will not be able to understand that the real issue
 is parameter is not a serilizable type. Better message could be Paramater 
 xxx is not serializable. Pass-by-value not allowed on this object
 This exception is  thrown from 
 org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding.copy() 
 method , line number 78

-- 
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: Policy Attachments Resolution in the Assembly Model

2007-08-09 Thread Jean-Sebastien Delfino

Venkata Krishnan wrote:

Not sure I understand this.   I guess its to do with the
ExtensibleURLArtifactProcessor that strips off the extension and
searches for processors only by those extensions.  So even if the
URLArtifactProcessor.getArtifactType() returned 'definitions.xml' we'd
still have a problem.  I guess we have to designate some files as
configuration files that have specific designated processors.  When
the contribution service picks up these files it must invoke the
corresponding artifact processors and in all other cases - for
application artifacts it could go by what its going currently.  Makes
sense ?

- Venkat


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

[snip]
Venkata Krishnan wrote:


Hi Sebastien, thanks.  I've figured out all of this already :)  Just
the one hanging thing - the definitions.xml is an artifact that might
have to be picked up by the contribution service.  While processors
for all other documents could be found by their unique extensions such
as .composte or .constrainingType its a bit of a trouble with
definitions.xml, the extension .xml being generic.

Could we extend the logic in ExtensibleURLArtifactProcessor.read to
first look at extensions and if not found try with the name of the
file ?  So the principle is - search for processors either by
extensions or by the file name for specific kind of documents.  I sort
of feel a bit clumsy about this approach - whats an alternative that
could be cleaner ?

Thanks



  

Here's a simple change to make this cleaner:

Instead of URLArtifactProcessor.getType() returning
.composite for *.composite files
definition.xml for definition.xml files

URLArtifactProcessor.getType() could return
*.composite for *.composites files
definitions.xml for definition.xml

Thoughts?

--
Jean-Sebastien




I didn't say that this didn't require any changes in any classes. I'm 
just proposing a change to how URLArtifactProcessors indicate what they 
support:

*.foo for all files with extension .foo
foo.bar for file foo.bar

Then, yeah sure, some classes will have to change to accomodate this new 
way of declaring URLArtifactProcessors.


--
Jean-Sebastien


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



Re: 1 more new component instance per request?

2007-08-09 Thread Simon Laws
On 8/9/07, shaoguang geng [EMAIL PROTECTED] wrote:

 Today, I found in respond to each request, Tuscany instantiate new one
 class for each. I tried binding.ws, it works as well.

 SCA1.0 does not specify instance management of a component, but I remember
 J2EE does not mentioned such things for EJB and servlet, it should be
 managed by the containers.

 So here comes my question: is it a good idea to make a great deal of
 component instances in Tuscany, or we might control it to act as singleton?




 -
 Sick sense of humor? Visit Yahoo! TV's Comedy with an Edge to see what's
 on, when.

Hi Shaoguang

SCA defines a concept of scope for a component, for example, if you take a
look at the Java Annotations and APIs spec you will see an annotation @SCOPE
defined which takes the values,

STATELESS
REQUEST
CONVERSATION
COMPOSITE

This gives you some fairly coarse grained control over how the runtime will
manage instances of Java components. For example, if you mark your Java
implementation as having @SCOPE(COMPOSITE) you should see that only one
instance is created within the composite.

Hope that helps

Simon


Re: Policy Attachments Resolution in the Assembly Model

2007-08-09 Thread Venkata Krishnan
:) thanks.  That makes sense to me.

- Venkat

On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:
 Venkata Krishnan wrote:
  Not sure I understand this.   I guess its to do with the
  ExtensibleURLArtifactProcessor that strips off the extension and
  searches for processors only by those extensions.  So even if the
  URLArtifactProcessor.getArtifactType() returned 'definitions.xml' we'd
  still have a problem.  I guess we have to designate some files as
  configuration files that have specific designated processors.  When
  the contribution service picks up these files it must invoke the
  corresponding artifact processors and in all other cases - for
  application artifacts it could go by what its going currently.  Makes
  sense ?
 
  - Venkat
 
 
  On 8/8/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:
 
  [snip]
  Venkata Krishnan wrote:
 
  Hi Sebastien, thanks.  I've figured out all of this already :)  Just
  the one hanging thing - the definitions.xml is an artifact that might
  have to be picked up by the contribution service.  While processors
  for all other documents could be found by their unique extensions such
  as .composte or .constrainingType its a bit of a trouble with
  definitions.xml, the extension .xml being generic.
 
  Could we extend the logic in ExtensibleURLArtifactProcessor.read to
  first look at extensions and if not found try with the name of the
  file ?  So the principle is - search for processors either by
  extensions or by the file name for specific kind of documents.  I sort
  of feel a bit clumsy about this approach - whats an alternative that
  could be cleaner ?
 
  Thanks
 
 
 
 
  Here's a simple change to make this cleaner:
 
  Instead of URLArtifactProcessor.getType() returning
  .composite for *.composite files
  definition.xml for definition.xml files
 
  URLArtifactProcessor.getType() could return
  *.composite for *.composites files
  definitions.xml for definition.xml
 
  Thoughts?
 
  --
  Jean-Sebastien
 
 

 I didn't say that this didn't require any changes in any classes. I'm
 just proposing a change to how URLArtifactProcessors indicate what they
 support:
 *.foo for all files with extension .foo
 foo.bar for file foo.bar

 Then, yeah sure, some classes will have to change to accomodate this new
 way of declaring URLArtifactProcessors.

 --
 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: Cross-jvm locate service

2007-08-09 Thread Simon Laws
On 8/8/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:

 Kevin Williams wrote:
  I am interested in extending the current locate service capability to
  support the location of services that may be running within the same
  domain but a separate jvm.  The most straightforward approach  may be
  to dynamically create and return a service reference using the same
  Tuscany runtime elements that now create service references for
  injection in support of the @reference annotation.
 
  Any thoughts or pointers would be appreciated.
 
  Thanks,
 
  --Kevin
 

 This sounds good to me. I guess you're talking about
 SCADomain.getService(targetComponentName/targetServiceName). We've been
 flip-flopping between locateService/getService a few times :) ... Here
 are a few more thoughts.

 First here's how SCADomain.getService() currently works:
 1. look for the target component model object in the in-memory domain
 composite kept in SCADomain
 2. look for the target service on that component
 3. find on that component the self-reference created for that service
 (these self-references are automatically created by CompositeBuilder for
 each service provided by a component)
 4. create a CallableReference for that self-reference
 5. get a proxy to the service from the CallableReference

 Some pointers to code:
 [1] and [2] -

 org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.getServiceReference
 ()
 [3] and [4] -

 org.apache.tuscany.sca.core.component.ComponentContextImpl.createSelfReference
 ()
 [5] - org.apache.tuscany.sca.core.component.CallableReferenceImpl

 Now, when the target component/service runs in a different JVM, you
 won't have an in-memory model object representing it :( but that's not a
 big issue :) ... As you suggested you can simply create a local
 reference and bind it to the target service (assuming you know its
 binding type and endpoint URI), then proceed to get a CallableReference
 and a proxy for it as usual.

 This gives us the following steps:
 1. determine the binding type and endpoint URI of the target
 component/service you're looking for (I won't get into the details of
 how to do that here, as I think Simon is covering it in his distributed
 binding implementation)
 2. dynamically create a reference for your target service and configure
 it with that binding and endpoint URI
 3. perform steps [4] and [5] from above.

 For step 2,

 org.apache.tuscany.sca.assembly.builder.impl.CompositeConfigurationBuilderImpl.createSelfReference
 ()
 shows how to create a reference from a service.

 Hope this helps.

 --
 Jean-Sebastien


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

 Hi Kevin

This seems to fit with the distributed work. I hadn't considered opening
this up to DefaultSCADomain.getServiceReference() but I don't see why that
shouldn't be done. Let me just ask a few questions to make sure I'm clear
about what you are after.

 location of services that may be running within the same
 domain but a separate jvm

How are you intending to refer to the service that is running in a separate
JVM. Currently getServiceReference() expects a service name so we can rely
on the implication that all contributed composites are notionally included
into the domain level composite to reference a component and extend
Sebastien's process to say.

1. look for the target component model object in the in-memory domain
composite kept in SCADomain

if found

2. look for the target service on that component
3. find on that component the self-reference created for that service
(these self-references are automatically created by CompositeBuilder for
each service provided by a component)
4. create a CallableReference for that self-reference
5. get a proxy to the service from the CallableReference

else

2. look for the named component/serivce in other nodes of the distributed
(cross JVM) domain
  I am working up some interfaces to allow this to happen in the distributed
domain case, for example,

http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/distributed/src/main/java/org/apache/tuscany/sca/distributed/management/ServiceDiscovery.java
   Not implemented just yet as I'm currently looking at the sca domain
implementation but you get the idea.
   The implementation could use some simple repository implementation or
could derive the information from file.

3. Create a local reference for the remote service
  Not sure of the details here but you both seem happy that this is
straightforward. The thing that does look problematic is determining the
binding. In the distributed case I assume that all cross JVM messaging are
handled by the sca binding. Are you expecting that you can do a getService
for a non-wired service, i.e. a service with an explicit remote binding such
as binding.ws, that is running in another VM. If so that we will need, as
Sebastien suggests, to be able 

Re: Release management for next release, was: SCA 0.92 release?

2007-08-09 Thread Simon Nash


Jean-Sebastien Delfino wrote:


[snip]
Simon Nash wrote:




Raymond Feng wrote:



[snip]


2) We could branch for the 1.0 release to contain the candidate 
modules

and keep doing 1.0 developement in the branch and merge them into the
trunk. I'm not sure how feasible it is.
  


+1
I think it's feasible if doing 1.0 development is about stabilizing 
the 1.0 release branch, which I guess a release branch is for :) That 
means:

- No completely new function, only bug fixes and improvements.
- No changes to dependencies or structure of the distro (unless 
required to fix a major bug, and approved by the RM).
- Commits go with a full build of the runtime, itests, samples and 
demos, and verification that the samples still work following the 
steps documented in their readmes.



How soon would we be moving into this mode?  I presume it would be after
we have released 1.0-beta.  Does anyone think it would be sooner than 
that?


  Simon



I'm probably missing something in your question :). What I'm describing 
here is in response to Raymond's question about doing 1.0 development 
in the branch. The branch in question is the 1.0-beta release branch, 
used to release 1.0-beta, i.e. *before* it is released.



Sorry about the misunderstanding.  I was thinking about 1.0 as being the
release that came after 1.0-beta or whatever we decide to call it.
So while 1.0-beta is being stabilized in the branch, I would expect
development of function targeted at 1.0 (1.0 development) to be
happening in the trunk.

  Simon


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



Re: Release management for next release, was: SCA 0.92 release?

2007-08-09 Thread ant elder
On 8/9/07, Simon Nash [EMAIL PROTECTED] wrote:


 Jean-Sebastien Delfino wrote:

  [snip]
  Simon Nash wrote:
 
 
  Raymond Feng wrote:
 
 
  [snip]
 
 
  2) We could branch for the 1.0 release to contain the candidate
  modules
  and keep doing 1.0 developement in the branch and merge them into
 the
  trunk. I'm not sure how feasible it is.
 
 
  +1
  I think it's feasible if doing 1.0 development is about stabilizing
  the 1.0 release branch, which I guess a release branch is for :) That
  means:
  - No completely new function, only bug fixes and improvements.
  - No changes to dependencies or structure of the distro (unless
  required to fix a major bug, and approved by the RM).
  - Commits go with a full build of the runtime, itests, samples and
  demos, and verification that the samples still work following the
  steps documented in their readmes.
 
  How soon would we be moving into this mode?  I presume it would be
 after
  we have released 1.0-beta.  Does anyone think it would be sooner than
  that?
 
Simon
 
 
  I'm probably missing something in your question :). What I'm describing
  here is in response to Raymond's question about doing 1.0 development
  in the branch. The branch in question is the 1.0-beta release branch,
  used to release 1.0-beta, i.e. *before* it is released.
 
 Sorry about the misunderstanding.  I was thinking about 1.0 as being the
 release that came after 1.0-beta or whatever we decide to call it.
 So while 1.0-beta is being stabilized in the branch, I would expect
 development of function targeted at 1.0 (1.0 development) to be
 happening in the trunk.

Simon


I guess thats what I'd expect as well. If we had committers keen to continue
developing post-1.0 function in trunk while we released 0.95 and 1.0 from
the one branch that would be a good approach, but we don't have that so i
think it will be easier to continue with the trunk for 1.0. That would save
a lot of merging and it will keep the 0.95 branch more stable which should
make it easier to get a 0.95 release out.

   ...ant


[jira] Commented: (TUSCANY-1465) Allow passing ResultDescriptor for dynamic Commands

2007-08-09 Thread Adriano Crestani (JIRA)

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

Adriano Crestani commented on TUSCANY-1465:
---

- On ReadCommandImpl.setResultDescriptor(List) you are storing the list 
directly, however I think the list should be copied(also the elements), because 
the way it is the user can modify the Command's ResultDescriptor List or the 
ResultDescriptor itself anywhere else on users'code without notify the Command.

- The ResultDescriptorSorter.sortList(List) is returning 3 different ways:
1. When the List parameter is null, the method returns null. I think 
it's ok
2. When the List is empty, the method returns the same List object
3. Otherwise, it's returning a new List object containing the 
ResultDescriptors sorted by the index

I think on 2 the List returned should be a new empty List and not the parameter 
List. OR the 3 could return the same List but with the objects sorted. I think 
it's important to define the method logic, if it will always return the same 
List passed on parameter or return a new List.

- Why ResultDescriptor cannot be made Comparable?

- Is there any reason not to name the method List 
Command.set/getResultDescriptor to set/getResultDescriptors? Because it returns 
a List of ResultDescriptors, and not a single one. 

Maybe we could use some pattern here, as addResultDescriptor(ResultDescriptor), 
removeResultDescriptor(ResultDescriptor), and getResultDescriptor(int).

- Why the ResultDescriptor Lists paremeters and returns cannot be defined as 
ListResultDescriptor?

I applied the patch on my trunk and it passed on all mvn tests, I think it`s 
ok. I just want to know your thougths about my questions above : )

Regards,
Adriano Crestani

 Allow passing ResultDescriptor for dynamic Commands
 ---

 Key: TUSCANY-1465
 URL: https://issues.apache.org/jira/browse/TUSCANY-1465
 Project: Tuscany
  Issue Type: Bug
  Components: Java DAS RDB
Affects Versions: Java-DAS-Next
Reporter: Amita Vadhavkar
Assignee: Amita Vadhavkar
 Fix For: Java-DAS-Next

 Attachments: 1465.patch


 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg19886.html
 Action for the issue discussed in above mail.

-- 
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: New dependencies on binding-sca? was: svn commit: r563787 - in /incubator/tuscany/java/sca/modules: binding-ejb/pom.xml core-spring/pom.xml host-embedded/pom.xml

2007-08-09 Thread Simon Laws
The binding-ejb one was a mistake
host-embedded/ReallySmallRuntimeBuilder creates a SCABindingProcessor

I'll go fix the first one and test against the latest code

Thanks

Simon

On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:

 I'm not sure what required these dependency changes:

 - binding-ejb now depending on host-embedded?
 - host-embedded now depending on binding-sca-xml?

 Could you please help me understand? Thanks.


 [EMAIL PROTECTED] wrote:
  Author: slaws
  Date: Wed Aug  8 01:29:54 2007
  New Revision: 563787
 
  URL: http://svn.apache.org/viewvc?view=revrev=563787
  Log:
  TUSCANY-1512
  Correct some binding-sca dependencies that I missed on the last checkin
 
  Modified:
  incubator/tuscany/java/sca/modules/binding-ejb/pom.xml
  incubator/tuscany/java/sca/modules/core-spring/pom.xml
  incubator/tuscany/java/sca/modules/host-embedded/pom.xml
 
  Modified: incubator/tuscany/java/sca/modules/binding-ejb/pom.xml
  URL:
 http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-ejb/pom.xml?view=diffrev=563787r1=563786r2=563787
 
 ==
  --- incubator/tuscany/java/sca/modules/binding-ejb/pom.xml (original)
  +++ incubator/tuscany/java/sca/modules/binding-ejb/pom.xml Wed Aug  8
 01:29:54 2007
  @@ -38,6 +38,12 @@
   artifactIdtuscany-extension-helper/artifactId
   version1.0-incubating-SNAPSHOT/version
   /dependency
  +
  +dependency
  +groupIdorg.apache.tuscany.sca/groupId
  +artifactIdtuscany-host-embedded/artifactId
  +version1.0-incubating-SNAPSHOT/version
  +/dependency
 
   dependency
   groupIdorg.apache.geronimo.specs/groupId
 
  Modified: incubator/tuscany/java/sca/modules/core-spring/pom.xml
  URL:
 http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core-spring/pom.xml?view=diffrev=563787r1=563786r2=563787
 
 ==
  --- incubator/tuscany/java/sca/modules/core-spring/pom.xml (original)
  +++ incubator/tuscany/java/sca/modules/core-spring/pom.xml Wed Aug  8
 01:29:54 2007
  @@ -100,8 +100,8 @@
   groupIdorg.apache.tuscany.sca/groupId
   artifactIdtuscany-binding-sca/artifactId
   version1.0-incubating-SNAPSHOT/version
  -scopetest/scope
  -/dependency
  +/dependency
  +
   /dependencies
 
   /project
 
  Modified: incubator/tuscany/java/sca/modules/host-embedded/pom.xml
  URL:
 http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/host-embedded/pom.xml?view=diffrev=563787r1=563786r2=563787
 
 ==
  --- incubator/tuscany/java/sca/modules/host-embedded/pom.xml (original)
  +++ incubator/tuscany/java/sca/modules/host-embedded/pom.xml Wed Aug  8
 01:29:54 2007
  @@ -45,14 +45,12 @@
   groupIdorg.apache.tuscany.sca/groupId
   artifactIdtuscany-binding-sca/artifactId
   version1.0-incubating-SNAPSHOT/version
  -scoperuntime/scope
   /dependency
 
   dependency
   groupIdorg.apache.tuscany.sca/groupId
   artifactIdtuscany-binding-sca-xml/artifactId
   version1.0-incubating-SNAPSHOT/version
  -scoperuntime/scope
   /dependency
 
   dependency
 
 
 
  -
  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: Release management for next release, was: SCA 0.92 release?

2007-08-09 Thread Jean-Sebastien Delfino

ant elder wrote:

On 8/9/07, Simon Nash [EMAIL PROTECTED] wrote:
  

Jean-Sebastien Delfino wrote:



[snip]
Simon Nash wrote:

  

Raymond Feng wrote:

  

[snip]


  

2) We could branch for the 1.0 release to contain the candidate
modules
and keep doing 1.0 developement in the branch and merge them into


the


trunk. I'm not sure how feasible it is.



+1
I think it's feasible if doing 1.0 development is about stabilizing
the 1.0 release branch, which I guess a release branch is for :) That
means:
- No completely new function, only bug fixes and improvements.
- No changes to dependencies or structure of the distro (unless
required to fix a major bug, and approved by the RM).
- Commits go with a full build of the runtime, itests, samples and
demos, and verification that the samples still work following the
steps documented in their readmes.

  

How soon would we be moving into this mode?  I presume it would be


after


we have released 1.0-beta.  Does anyone think it would be sooner than
that?

  Simon



I'm probably missing something in your question :). What I'm describing
here is in response to Raymond's question about doing 1.0 development
in the branch. The branch in question is the 1.0-beta release branch,
used to release 1.0-beta, i.e. *before* it is released.

  

Sorry about the misunderstanding.  I was thinking about 1.0 as being the
release that came after 1.0-beta or whatever we decide to call it.
So while 1.0-beta is being stabilized in the branch, I would expect
development of function targeted at 1.0 (1.0 development) to be
happening in the trunk.

   Simon



  
I guess thats what I'd expect as well. If we had committers keen to continue

developing post-1.0 function in trunk while we released 0.95 and 1.0 from
the one branch that would be a good approach, but we don't have that so i
think it will be easier to continue with the trunk for 1.0. That would save
a lot of merging and it will keep the 0.95 branch more stable which should
make it easier to get a 0.95 release out.

   ...ant

  


Sure, 1.0 development should happen in trunk, but I was trying to 
respond to a different point brought up by Raymond.


On Aug 18, we are going to cut the August release branch. The point is 
about allowing small changes, bug fixes and improvements to continue in 
that branch while we are putting the release distros together, with the 
following conditions:


- No completely new function, only bug fixes and improvements.
- No changes to dependencies or structure of the distro (unless required to fix 
a major bug, and approved by the RM).
- Commits go with a full build of the runtime, itests, samples and demos, and 
verification that the samples still work following the steps documented in 
their readmes.

--
Jean-Sebastien


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



Re: [DAS] Column Converter - why not to associate with ResultDescriptor?

2007-08-09 Thread Adriano Crestani
Nice idea, I have no objections about your propose. But, I think we need
some more opnions from those who helped to implement Java DAS, mainly the
ColumnConverters.

Regards,
Adriano Crestani

On 8/7/07, Amita Vadhavkar [EMAIL PROTECTED] wrote:

 With JIRA-1465, ResultDescriptor can be set dynamically for DAS Commands
 which are created with DAS.createCommand().

 Further on this, will it be helpful to associate ColumnConverter with
 ResultDescriptor? So, when there is no Config File, user will have
 a choice to use ColumnConveter on-the-fly /Command basic from inside the
 dynamic ResultDescriptor.

 The scope of this converter will be per Command. Whereas, the
 ColumnConverter we define in Config File inTableColumn, has a scope of
 Table.

 When column conveter is available for a Command, it will be used  and in
 its
 absence, the one available at Table/Column scope will be use and in its
 absence it will be Default/No converter as usual.

 This will have a benefit for clients, which need frequent use of column
 converter and have changing needs (based on say, Locale, TimeZone,).

 Suggestions?

 Regards,
 Amita



Re: SVN Props

2007-08-09 Thread Simon Laws
On 8/8/07, Luciano Resende [EMAIL PROTECTED] wrote:

 Please update the following too


 https://svn.apache.org/repos/asf/incubator/tuscany/java/etc/set_svn_properties.sh

 On 8/7/07, Simon Laws [EMAIL PROTECTED] wrote:
  The following appear to be missing from etc/svn-props
 
  DISCLAIMER = svn:eol-style=native;svn:mime-type=text/plain
  *.composite =
 svn:mime-type=text/xml;svn:eol-style=native;svn:keywords=Rev
  Date
 
  Is there a good reason? If not I'll go add them
 
  Simon
 


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

 Ok, I've updated both files with the new changes. However the two files
don't match for other reasons. I'll take a look if I get a chance.

Simon


Re: Java2WSDL/WSDL2Java tools

2007-08-09 Thread ant elder
Thats right, these are the Axis2 tools just with some patches on top to add
support for SDOs and to fix bugs we've come across before we got the bugs
fixed in the Axis2 code. The problem with doing it like this has been we
fall be hind Axis2 and loose track of what we changed and its a headache to
merge things each time there's a new Axis2 release, which is why our
versions have slipped behind like this. I agree we should do just as you say
and work more closely with Axis2, ideally make SDO a first class Axis2
databinding so we don't even need to modify the Axis2 code. Thats kind of
why I started this thread - to prompt some discussion on what we want this
tooling to be doing.

   ...ant

On 8/8/07, Brady Johnson [EMAIL PROTECTED] wrote:


 I thought I saw a post recently where someone mentioned that these tools
 were taken from axis. If so, are we going to maintain a parallel
 implementation? It might be useful to talk with the axis folks to see if
 these tools can be refactored in such a way as to easily allow the types
 of extensions/additions that Tuscany will be doing, thus avoiding
 duplicate code.

 On another note:
 Has anyone ever seen the same tools for C++? If not, maybe we could open
 another thread to discuss implementing them for TuscanySCA Native.


 
 Brady Johnson
 Lead Software Developer - HydraSCA
 Rogue Wave Software - [EMAIL PROTECTED]


 -Original Message-
 From: ant elder [mailto:[EMAIL PROTECTED]
 Sent: Wednesday, August 08, 2007 12:47 PM
 To: tuscany-dev
 Subject: Java2WSDL/WSDL2Java tools

 Our Java2WSDL and WSDL2Java tools have been a bit neglected and thats
 starting to get a few comments, so what should we do with these? Is the
 intention that these are specifically for SDO or should they be more
 general tools with options to be compatible with all the data binding's
 that Tuscany SCA supports? The ws binding generating wsdl on the fly
 seems related to Java2WSDL, do we expect the wsdl be identical whether
 generated on the fly or from java2wsdl? Should the on the fly generation
 and java2wsdl tool share any common code? There's also the java/xsd
 tools on the SDO project, should any of that code get used by the SCA
 tools when using SDOs?

...ant



Re: Release management for next release, was: SCA 0.92 release?

2007-08-09 Thread ant elder
On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:

snip

Sure, 1.0 development should happen in trunk, but I was trying to
 respond to a different point brought up by Raymond.

 On Aug 18, we are going to cut the August release branch. The point is
 about allowing small changes, bug fixes and improvements to continue in
 that branch while we are putting the release distros together, with the
 following conditions:

 - No completely new function, only bug fixes and improvements.
 - No changes to dependencies or structure of the distro (unless required
 to fix a major bug, and approved by the RM).
 - Commits go with a full build of the runtime, itests, samples and demos,
 and verification that the samples still work following the steps documented
 in their readmes.


Sure ok, the branch wont be immediately frozen, but, and its a big but, we
need to be really careful with that as every time we've allowed development
to continue in the branch it has ended up delaying a release. No one can on
each commit do a full review including running all the samples, reading all
the readme's and vetting all the legal stuff, so things get missed. Its also
hard to review things thoroughly after you've already done a review a couple
of times, so things start getting missed. I'd rather delay taking the branch
than plan on being able to continue development in the branch. There's been
a lot of change in trunk since 0.91, maybe what we should do is start the
clean up work, legal review, sorting out the distributions for all the
module changes etc in trunk towards then end of next week but not take the
branch till very early the following week with the expectation of getting
RC1 out really quickly.

   ...ant


Re: Cross-jvm locate service

2007-08-09 Thread Jean-Sebastien Delfino

Comments inline.

[snip]
Simon Laws wrote:

Currently getServiceReference() expects a service name so we can rely
on the implication that all contributed composites are notionally included
into the domain level composite to reference a component and extend
Sebastien's process to say.
  


Just to make sure it's clear, as I'm not sure I completely follow the 
above sentence, components deployed to other nodes will not be present 
in the in-memory composite model kept in an SCAdomain object.



1. look for the target component model object in the in-memory domain
composite kept in SCADomain

if found

2. look for the target service on that component
3. find on that component the self-reference created for that service
(these self-references are automatically created by CompositeBuilder for
each service provided by a component)
4. create a CallableReference for that self-reference
5. get a proxy to the service from the CallableReference

else

2. look for the named component/serivce in other nodes of the distributed
(cross JVM) domain
  I am working up some interfaces to allow this to happen in the distributed
domain case, for example,

http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/distributed/src/main/java/org/apache/tuscany/sca/distributed/management/ServiceDiscovery.java
   Not implemented just yet as I'm currently looking at the sca domain
implementation but you get the idea.
   The implementation could use some simple repository implementation or
could derive the information from file.

3. Create a local reference for the remote service
  


Your if/else proposal looks good to me.


  Not sure of the details here but you both seem happy that this is
straightforward.
The thing that does look problematic is determining the
binding.


Not so problematic if it's part of the info returned by your 
ServiceDiscovery :)



In the distributed case I assume that all cross JVM messaging are
handled by the sca binding.


No, any binding can be used inside an SCA domain.


Are you expecting that you can do a getService
for a non-wired service, i.e. a service with an explicit remote binding such
as binding.ws, that is running in another VM.


Not sure what you mean by a non-wired service. Services with binding.ws 
can be wired too.



If so that we will need, as
Sebastien suggests, to be able to get hold of more information about the
remote component than I have taken account of to date so that a partial
model can be constructed in order to create the correct binding.
  


Yes :)

4  5 as above

Simon

  


--
Jean-Sebastien


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



Re: Release management for next release, was: SCA 0.92 release?

2007-08-09 Thread Venkata Krishnan
Hi,

Theres been lots of discussion.  So let me summarize my understanding
/ imaginiation : -

- We will cut a branch around Aug 18th for Release 0.95.  As always,
once the branch is cut we need to be watchful on the commits
(including getting the RMs nod to significant ones) to the branch and
also ensure the trunk is always in sync.
- Post 0.95, maybe a couple of weeks after the release, we'd cut
another branch and head with that for 1.0 release.   Being a 1.0
release, we prob. need a branch early as that so that we can whet the
things we are targetting for the release.

Is that all right ?

- Venkat



On 8/9/07, ant elder [EMAIL PROTECTED] wrote:
 On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:

 snip

 Sure, 1.0 development should happen in trunk, but I was trying to
  respond to a different point brought up by Raymond.
 
  On Aug 18, we are going to cut the August release branch. The point is
  about allowing small changes, bug fixes and improvements to continue in
  that branch while we are putting the release distros together, with the
  following conditions:
 
  - No completely new function, only bug fixes and improvements.
  - No changes to dependencies or structure of the distro (unless required
  to fix a major bug, and approved by the RM).
  - Commits go with a full build of the runtime, itests, samples and demos,
  and verification that the samples still work following the steps documented
  in their readmes.


 Sure ok, the branch wont be immediately frozen, but, and its a big but, we
 need to be really careful with that as every time we've allowed development
 to continue in the branch it has ended up delaying a release. No one can on
 each commit do a full review including running all the samples, reading all
 the readme's and vetting all the legal stuff, so things get missed. Its also
 hard to review things thoroughly after you've already done a review a couple
 of times, so things start getting missed. I'd rather delay taking the branch
 than plan on being able to continue development in the branch. There's been
 a lot of change in trunk since 0.91, maybe what we should do is start the
 clean up work, legal review, sorting out the distributions for all the
 module changes etc in trunk towards then end of next week but not take the
 branch till very early the following week with the expectation of getting
 RC1 out really quickly.

...ant


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



[jira] Commented: (TUSCANY-1464) Wrong query results when SELECT misses PKs

2007-08-09 Thread Adriano Crestani (JIRA)

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

Adriano Crestani commented on TUSCANY-1464:
---

- On code below, it checks for the fk COC that is table_id, however this code 
will take _id as fk, but there is no table name before the '_'. I think the 
condition below should be = 1 instead of 0.

ResultMetadata Constructor:
...
String colName = ;
if (columnName.indexOf(_ID) = 0) {   
...

-Another doubt, is the String column name always upper case? Otherwise the 
indexof will look for the _ID on sensitive case mode, when it shouldn't.

- Why do you check for null pks twice on method 
ResultSetProcessor.addRowToGraph?

if (!rawDataFromRow.hasValidPrimaryKey() ||
(rawDataFromRow.hasNullPrimaryKey()  
!rawDataFromRow.isTableEmpty())) {//some PK null , but other data present
//continue; - need to throw exception as anyway the result will 
give a wrong impression
//when any one table in result set misses PK column or has null 
value in PK column
throw new RuntimeException(Table 
+rawDataFromRow.getTableName()+ in query does not include Primary Key +
column or has null value in it, can not 
proceed!);
}

String tableName = rawDataFromRow.getTableName();
DataObject tableObject = registry.get(tableName, 
rawDataFromRow.getPrimaryKeyValues());
if (tableObject == null
 rawDataFromRow.getPrimaryKeyValues() != null
 !rawDataFromRow.getPrimaryKeyValues().contains(null)
 rawDataFromRow.getPrimaryKeyValues().size() 0) 
{//2nd check for null data in PK,
//as TableData.addData() - hasValidPrimaryKey=false is 
commented for a reason
//with this, DataObjs with null PK will not be added to 
registry and tableObjects
tableObject = doMaker.createAndAddDataObject(rawDataFromRow, 
resultMetadata);

if (this.logger.isDebugEnabled()) {
this.logger.debug(Putting table  + tableName +  with PK 
+ rawDataFromRow.getPrimaryKeyValues() +  into 
registry);
}

registry.put(tableName, rawDataFromRow.getPrimaryKeyValues(), 
tableObject);
}
else{
if (this.logger.isDebugEnabled()) {
this.logger.debug(Not Null tableObject or NULL PK);
}
}

I applied the patch on trunk, but when mvn compiled there was a class using 
ResultDescriptor.getColumnIndex method, but this getter was only added on patch 
from JIRA 1465. Then I applied both, 1464 and then 1465, is it ok? Perhaps, the 
mvn tests failed on test:

 FAILURE!
testReplaceResultDescriptor(org.apache.tuscany.das.rdb.test.DynamicResultDescrip
torTests)  Time elapsed: 0.02 sec   FAILURE!
junit.framework.AssertionFailedError
at junit.framework.Assert.fail(Assert.java:47)
at junit.framework.Assert.assertTrue(Assert.java:20)
at junit.framework.Assert.assertTrue(Assert.java:27)
at org.apache.tuscany.das.rdb.test.DynamicResultDescriptorTests.testRepl
aceResultDescriptor(DynamicResultDescriptorTests.java:147)
at org.apache.tuscany.das.rdb.test.DynamicResultDescriptorTests.testRepl
aceResultDescriptor(DynamicResultDescriptorTests.java:147)

I don't know if I did something wrong, but I will try it tomorrow, needing to 
sleep now ; )

Regards,
Adriano Crestani
 

 Wrong query results when SELECT misses PKs
 --

 Key: TUSCANY-1464
 URL: https://issues.apache.org/jira/browse/TUSCANY-1464
 Project: Tuscany
  Issue Type: Bug
  Components: Java DAS RDB
Affects Versions: Java-DAS-Next
Reporter: Amita Vadhavkar
Assignee: Amita Vadhavkar
 Fix For: Java-DAS-Next

 Attachments: 1464.patch, 1464.patch, 1464.patch


 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg20322.html
 Fix the bug uncovered in above mail discussion.

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



[jira] Resolved: (TUSCANY-1445) SDO - README.txt in resources/META-INF should be deleted

2007-08-09 Thread Kelvin Goodson (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kelvin Goodson resolved TUSCANY-1445.
-

   Resolution: Fixed
Fix Version/s: (was: Java-SDO-Next)
   Java-SDO-1.0

Fixed as part of the 1.0-incubating release.

 SDO - README.txt in resources/META-INF should be deleted
 

 Key: TUSCANY-1445
 URL: https://issues.apache.org/jira/browse/TUSCANY-1445
 Project: Tuscany
  Issue Type: Bug
  Components: Java SDO Implementation
Affects Versions: Java-SDO-beta1
Reporter: Tom Seelbach
Priority: Minor
 Fix For: Java-SDO-1.0


 There is a README.txt in each of the following directories:
   plugin\src\main\resources\META-INF
   impl\src\main\resources\META-INF
   tools\src\main\resources\META-INF
 the first line of the README refers to the M1 (May 2006) which is incorrect.
 The next part of the README is a subset of the information from the NOTICE 
 and should not be duplicated in a README.
 The Support section of the README is not needed at this level of the 
 project.  It is better to put support statements like this on the wiki, or at 
 the top level of the project.

-- 
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: Cross-jvm locate service

2007-08-09 Thread Simon Laws
On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:

 Comments inline.

 [snip]
 Simon Laws wrote:
  Currently getServiceReference() expects a service name so we can rely
  on the implication that all contributed composites are notionally
 included
  into the domain level composite to reference a component and extend
  Sebastien's process to say.
 

 Just to make sure it's clear, as I'm not sure I completely follow the
 above sentence, components deployed to other nodes will not be present
 in the in-memory composite model kept in an SCAdomain object.


I was just pointing out that regardless of where a component is actually
running one of it's services can be identified in the domain composite using
the component/service name by virtue of the implicit inclusion of
contributed composites into the domain composite. This is an important
assumption as it means that people can arbitrarily locate services deployed
into the domain. I was making no statement about what is in the model inside
each JVM. I assume that the model in each JVM will contain whatever
artifacts that have been contributed to that JVM.

So if you have different contributions for each JVM in the domain then you
get whatever is contributed to the JVM in your model. If you want to
reference a component that is not part  of the contributions loaded by the
JVM then you are forced to look elsewhere in the distributed domain.

If you want the components in a single contribution/composite to be
distributed across JVMs then this is a different scenario. We have done this
before with the distributed runtime by recording the component/JVM mapping
in a topology file. This  still doesn't imply that the components will make
it into the model (although they do in the current distributed
implementation).

 1. look for the target component model object in the in-memory domain
  composite kept in SCADomain
 
  if found
 
  2. look for the target service on that component
  3. find on that component the self-reference created for that service
  (these self-references are automatically created by CompositeBuilder for

  each service provided by a component)
  4. create a CallableReference for that self-reference
  5. get a proxy to the service from the CallableReference
 
  else
 
  2. look for the named component/serivce in other nodes of the
 distributed
  (cross JVM) domain
I am working up some interfaces to allow this to happen in the
 distributed
  domain case, for example,
 
 
 http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/distributed/src/main/java/org/apache/tuscany/sca/distributed/management/ServiceDiscovery.java
 Not implemented just yet as I'm currently looking at the sca domain
  implementation but you get the idea.
 The implementation could use some simple repository implementation or
  could derive the information from file.
 
  3. Create a local reference for the remote service
 

 Your if/else proposal looks good to me.

Not sure of the details here but you both seem happy that this is
  straightforward.
  The thing that does look problematic is determining the
  binding.

 Not so problematic if it's part of the info returned by your
 ServiceDiscovery :)


Agreed I just hadn't put it there yet because I was only dealing with the
case where cross JVM call is constructed automatically with the sca binding.
You are probably right that I should make it more generally applicable.

 In the distributed case I assume that all cross JVM messaging are
  handled by the sca binding.

 No, any binding can be used inside an SCA domain.


Sorry I misslead you here unintentionally.What I mean is that in the case I
am concentrating on at the moment I'm only dealing with the sca binding. I
didn't mean to imply that you can't manually specify remote bindings between
components within an sca domain. If you do this though AND you specify the
endpoint you are duty bound to bet it right. I.e. I'm not currently putting
in code to fix up remote bindings so that the the correct endpoint is
obtained regardless of what someone has put in the SCDL, WSDL etc.

 Are you expecting that you can do a getService
  for a non-wired service, i.e. a service with an explicit remote binding
 such
  as binding.ws, that is running in another VM.

 Not sure what you mean by a non-wired service. Services with binding.ws
 can be wired too.

I was specifically asking about the case that you do a getService for a
service that defines binding.ws with all the trimmings, i.e. endpoint
information. Actually maybe this works already. I'll have to go and try.

 If so that we will need, as
  Sebastien suggests, to be able to get hold of more information about the
  remote component than I have taken account of to date so that a partial
  model can be constructed in order to create the correct binding.
 

 Yes :)
  4  5 as above
 
  Simon
 
 

 --
 Jean-Sebastien


 -
 To unsubscribe, 

Creating a o.a.t.s.interfacedef.wsdl.WSDLInterface from an o.a.t.s.interfacedef.java.JavaInterface

2007-08-09 Thread ant elder
As part of the binding.ws on the fly wsdl generation i've been struggling
with creating a working Tuscany WSDLInterface object from a JavaInterface
object. I just can't seem to get things set up correctly so a complete
invocation flow works and the data binding interceptor works correctly doing
all the transformations and wrapping/unwrapping etc. I've not been able to
worked out exactly whats required to initialize all the various objects and
variables manually so that things work and that approach seems to end up
duplicating a lot of existing code which doesn't seem ideal, but  it also
doesn't seem easy to get access to and use use the various existing idl code
we already have to create all the operations and wrapper objects etc. So
anyone have any hints how and where would be the best place to be doing this
type of thing?

   ...ant


Service visibility (was Re: Cross-jvm locate service)

2007-08-09 Thread Simon Nash

This is technically feasible (see other discussion on this thread)
but I think we need to be careful about how wide open we are making
the services within a Tuscany SCA domain.  I don't think we want
every service within every domain to be wide open for anyone to reach
down from the sky and call it.  As the owner of a service, I would want
to decide whether it is exposed for local calling, distributed calling
within my domain (which can consist of multiple runtime nodes), or
revealed to other domains via some global locateService API.  I think
the right way for me to exercise this control is to create a
self-reference or a service reference within my domain, then selectively
pass this out to other domains in a manner that I can control, e.g., in
a service registry that is able to implement a governance policy.

  Simon

Kevin Williams wrote:


I am interested in extending the current locate service capability to
support the location of services that may be running within the same
domain but a separate jvm.  The most straightforward approach  may be
to dynamically create and return a service reference using the same
Tuscany runtime elements that now create service references for
injection in support of the @reference annotation.

Any thoughts or pointers would be appreciated.

Thanks,

--Kevin

-
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: Java2WSDL/WSDL2Java tools

2007-08-09 Thread kelvin goodson
sounds sensible to me,  +1 to handling this within Axis2.

Kelvin.

On 09/08/07, ant elder [EMAIL PROTECTED] wrote:
 Thats right, these are the Axis2 tools just with some patches on top to add
 support for SDOs and to fix bugs we've come across before we got the bugs
 fixed in the Axis2 code. The problem with doing it like this has been we
 fall be hind Axis2 and loose track of what we changed and its a headache to
 merge things each time there's a new Axis2 release, which is why our
 versions have slipped behind like this. I agree we should do just as you say
 and work more closely with Axis2, ideally make SDO a first class Axis2
 databinding so we don't even need to modify the Axis2 code. Thats kind of
 why I started this thread - to prompt some discussion on what we want this
 tooling to be doing.

...ant

 On 8/8/07, Brady Johnson [EMAIL PROTECTED] wrote:
 
 
  I thought I saw a post recently where someone mentioned that these tools
  were taken from axis. If so, are we going to maintain a parallel
  implementation? It might be useful to talk with the axis folks to see if
  these tools can be refactored in such a way as to easily allow the types
  of extensions/additions that Tuscany will be doing, thus avoiding
  duplicate code.
 
  On another note:
  Has anyone ever seen the same tools for C++? If not, maybe we could open
  another thread to discuss implementing them for TuscanySCA Native.
 
 
  
  Brady Johnson
  Lead Software Developer - HydraSCA
  Rogue Wave Software - [EMAIL PROTECTED]
 
 
  -Original Message-
  From: ant elder [mailto:[EMAIL PROTECTED]
  Sent: Wednesday, August 08, 2007 12:47 PM
  To: tuscany-dev
  Subject: Java2WSDL/WSDL2Java tools
 
  Our Java2WSDL and WSDL2Java tools have been a bit neglected and thats
  starting to get a few comments, so what should we do with these? Is the
  intention that these are specifically for SDO or should they be more
  general tools with options to be compatible with all the data binding's
  that Tuscany SCA supports? The ws binding generating wsdl on the fly
  seems related to Java2WSDL, do we expect the wsdl be identical whether
  generated on the fly or from java2wsdl? Should the on the fly generation
  and java2wsdl tool share any common code? There's also the java/xsd
  tools on the SDO project, should any of that code get used by the SCA
  tools when using SDOs?
 
 ...ant
 


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



[jira] Commented: (TUSCANY-1522) @ConversationID injection incorrectly assumes target type is a String

2007-08-09 Thread Mark Combellack (JIRA)

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

Mark Combellack commented on TUSCANY-1522:
--

The problem is with the following code in the visitField() and visitMethod() 
methods of ConversationIDProcessor 

Class? paramType = field.getType();
if (String.class.equals(paramType)) {
. Does the injection here...
} else {
throw new UnknownContextTypeException(paramType.getName());
}

As can be seen, before doing the injection, it checks that the type of the 
field/method parameter is a String. If it is not, then it throws an exception.


 @ConversationID injection incorrectly assumes target type is a String
 -

 Key: TUSCANY-1522
 URL: https://issues.apache.org/jira/browse/TUSCANY-1522
 Project: Tuscany
  Issue Type: Bug
  Components: Java SCA Java Implementation Extension
Affects Versions: Java-SCA-Next
 Environment: Was using Tuscany revision 563420
Reporter: Mark Combellack
 Fix For: Java-SCA-Next


 Tuscany injection of @ConversationID assumes the target field is a String. 
 This is not the always the case according to the specification
 Page 33 of the Java Common Annotations and API says:
 1713 The type of this field is not necessarily String
 However, the Tuscany 
 org.apache.tuscany.sca.implementation.java.introspect.impl.ConversationIDProcessor
  class throws UnknownContextTypeException if the field is not a String.

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



[jira] Commented: (TUSCANY-1006) ChangeSummaryImpl.cachedSDOObjectChanges appears to not be thread safe

2007-08-09 Thread Kelvin Goodson (JIRA)

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

Kelvin Goodson commented on TUSCANY-1006:
-

Looks good to me -- caters for all possibilities.  Will this be a one time 
check and store state?

 ChangeSummaryImpl.cachedSDOObjectChanges appears to not be thread safe
 --

 Key: TUSCANY-1006
 URL: https://issues.apache.org/jira/browse/TUSCANY-1006
 Project: Tuscany
  Issue Type: Bug
  Components: Java SDO Implementation
Affects Versions: Java-SDO-beta1
 Environment: Sun JDK 1.4.2_11, 2-CPU server
Reporter: Ron Gavlin
Priority: Critical
 Fix For: Java-SDO-beta1


 I have an application in which multiple threads access a shared 
 ChangeSummaryImpl. Each thread invokes ChangeSummaryImpl.getOldValues() 
 repeatedly. This causes one or more of the threads to enter an infinite 
 while (true) - loop in HashMap.get(Object) with the following stack trace:
 HashMap.get(Object) line: 323
 ChangeSummaryImpl.getOldValues(DataObject) line: 481
 ...
 I suspect this occurs because the access to HashMap cachedSDOObjectChanges is 
 not synchronized. 
 I have been unable as of yet to create a simple test case that demonstrates 
 the problem. In the meantime, I will try to implement a short-term fix by 
 changing line 93 of ChangeSummaryImpl 
 from
 protected HashMap cachedSDOObjectChanges = new HashMap();
 to
 protected Map cachedSDOObjectChanges = Collections.synchronizedMap(new 
 HashMap());
 I will let you know if that fixes the problem. Any insight or assistance you 
 can offer concerning this problem is appreciated. This is a show-stopper 
 problem for us.
 Regards,
 - Ron

-- 
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: Release management for next release, was: SCA 0.92 release?

2007-08-09 Thread Simon Nash

Ant talked about cutting the branch very early next week.  I'd prefer
that to doing it on August 18th.  I will be away for a few days,
returning home late on the 18th, and I could take advantage of the
extra couple of days to help with last-minute things.

  Simon

Venkata Krishnan wrote:


Hi,

Theres been lots of discussion.  So let me summarize my understanding
/ imaginiation : -

- We will cut a branch around Aug 18th for Release 0.95.  As always,
once the branch is cut we need to be watchful on the commits
(including getting the RMs nod to significant ones) to the branch and
also ensure the trunk is always in sync.
- Post 0.95, maybe a couple of weeks after the release, we'd cut
another branch and head with that for 1.0 release.   Being a 1.0
release, we prob. need a branch early as that so that we can whet the
things we are targetting for the release.

Is that all right ?

- Venkat



On 8/9/07, ant elder [EMAIL PROTECTED] wrote:


On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:

snip

Sure, 1.0 development should happen in trunk, but I was trying to


respond to a different point brought up by Raymond.

On Aug 18, we are going to cut the August release branch. The point is
about allowing small changes, bug fixes and improvements to continue in
that branch while we are putting the release distros together, with the
following conditions:

- No completely new function, only bug fixes and improvements.
- No changes to dependencies or structure of the distro (unless required
to fix a major bug, and approved by the RM).
- Commits go with a full build of the runtime, itests, samples and demos,
and verification that the samples still work following the steps documented
in their readmes.



Sure ok, the branch wont be immediately frozen, but, and its a big but, we
need to be really careful with that as every time we've allowed development
to continue in the branch it has ended up delaying a release. No one can on
each commit do a full review including running all the samples, reading all
the readme's and vetting all the legal stuff, so things get missed. Its also
hard to review things thoroughly after you've already done a review a couple
of times, so things start getting missed. I'd rather delay taking the branch
than plan on being able to continue development in the branch. There's been
a lot of change in trunk since 0.91, maybe what we should do is start the
clean up work, legal review, sorting out the distributions for all the
module changes etc in trunk towards then end of next week but not take the
branch till very early the following week with the expectation of getting
RC1 out really quickly.

  ...ant




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



Intent and Policy attachments on Operations

2007-08-09 Thread Venkata Krishnan
Hi,

The Assembly Specs and the PolicyFramework specs allows for intents
and policysets to be specified on Operations.

To implement this I'd expect that the Operation interface support
methods to hold a set of required intents and policysets.  This also
seems in sync with the schema definition for Operation.

However in the existing code this has been modeled as an Intent
instance having a list of operations over which the intent could
apply.  Similarly a PolicySet instance has a list of operations to
which the policyset applies.  Is there any specific reason for
modeling it this way?

I am in progress with changes that change this to what I have
mentioned in the second paragraph of this mail.  If I am heading in
the wrong direction, could somebody shout please.

Thanks

- Venkat

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



[jira] Commented: (TUSCANY-1465) Allow passing ResultDescriptor for dynamic Commands

2007-08-09 Thread Amita Vadhavkar (JIRA)

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

Amita Vadhavkar commented on TUSCANY-1465:
--

Hi , am checking for your comments for 1464 and 1465, will reply/give improved 
patch for both in a day.
Please do not  commit any of these.
Regards
Amita

 Allow passing ResultDescriptor for dynamic Commands
 ---

 Key: TUSCANY-1465
 URL: https://issues.apache.org/jira/browse/TUSCANY-1465
 Project: Tuscany
  Issue Type: Bug
  Components: Java DAS RDB
Affects Versions: Java-DAS-Next
Reporter: Amita Vadhavkar
Assignee: Amita Vadhavkar
 Fix For: Java-DAS-Next

 Attachments: 1465.patch


 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg19886.html
 Action for the issue discussed in above mail.

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



[jira] Commented: (TUSCANY-1465) Allow passing ResultDescriptor for dynamic Commands

2007-08-09 Thread ant elder (JIRA)

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

ant elder commented on TUSCANY-1465:


I wonder if this is case where be liberal in what we accept, conservative in 
what we do might apply? If a patch has been tried and it looks ok and all 
tests pass but there's just a some questions on approach i think it can be good 
to just apply it and then incrementally develop things further once its in. 

 Allow passing ResultDescriptor for dynamic Commands
 ---

 Key: TUSCANY-1465
 URL: https://issues.apache.org/jira/browse/TUSCANY-1465
 Project: Tuscany
  Issue Type: Bug
  Components: Java DAS RDB
Affects Versions: Java-DAS-Next
Reporter: Amita Vadhavkar
Assignee: Amita Vadhavkar
 Fix For: Java-DAS-Next

 Attachments: 1465.patch


 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg19886.html
 Action for the issue discussed in above mail.

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



Contribution URLs

2007-08-09 Thread Simon Laws
I've just noticed that if I have a contribution directory as follows

/my/contribution/dir/mycomposite.composite

And I pass the source URL /my/contribution/dir to the contribution service
it complains that it can't find /my/contribution/mycomposite.composite.
If I pass the source URL /my/contribution/dir/ it works (note slash on end).


Is this a fault?

Simon


Re: Build problem in binding-ws-axis2

2007-08-09 Thread Simon Laws
On 8/9/07, ant elder [EMAIL PROTECTED] wrote:

 Yes, i've been seeing this today as well, seemed to be fine earlier in the
 week.

...ant

 On 8/9/07, Simon Nash [EMAIL PROTECTED] wrote:
 
  I'm seeing
 java.net.ConnectException: Connection refused: connect
  errors when building binding-ws-axis2 from a clean checkout of trunk.
  The failure is slightly intermittent in terms of the number of tests
  that fail, which varies from run to run.  Cleaning and rebuilding
  doesn't help, but running with mvn rather than mvn -o seems to slightly
  reduce the number of failing tests.  I almost never see the whole set
  of tests run without this error.  I started seeing it last night, and
  it was not happening on my previous checkout of a few days ago.
 
  This was a big problem for me a few months ago and I provided a patch
  that seemed to solve the problem, but now it is back with a vengeance.
  Is anyone else seeing this problem?
 
 Simon
 
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 

I haven't been seeing this and that was the symptom we say before, i.e. some
people saw it and some didn't.

Simon


[jira] Commented: (TUSCANY-1465) Allow passing ResultDescriptor for dynamic Commands

2007-08-09 Thread Adriano Crestani (JIRA)

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

Adriano Crestani commented on TUSCANY-1465:
---

I agree with you ant, I applied the patches from JIRA 1465 and 1464 separately 
and both passed on maven tests. Then I applied both on the same trunk, but the 
tests failed, so I couldn't commit :(

These errors are commented on https://issues.apache.org/jira/browse/TUSCANY-1464

Regards,
Adraino Crestani

 Allow passing ResultDescriptor for dynamic Commands
 ---

 Key: TUSCANY-1465
 URL: https://issues.apache.org/jira/browse/TUSCANY-1465
 Project: Tuscany
  Issue Type: Bug
  Components: Java DAS RDB
Affects Versions: Java-DAS-Next
Reporter: Amita Vadhavkar
Assignee: Amita Vadhavkar
 Fix For: Java-DAS-Next

 Attachments: 1465.patch


 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg19886.html
 Action for the issue discussed in above mail.

-- 
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: Build problem in binding-ws-axis2

2007-08-09 Thread ant elder
Yes, i've been seeing this today as well, seemed to be fine earlier in the
week.

   ...ant

On 8/9/07, Simon Nash [EMAIL PROTECTED] wrote:

 I'm seeing
java.net.ConnectException: Connection refused: connect
 errors when building binding-ws-axis2 from a clean checkout of trunk.
 The failure is slightly intermittent in terms of the number of tests
 that fail, which varies from run to run.  Cleaning and rebuilding
 doesn't help, but running with mvn rather than mvn -o seems to slightly
 reduce the number of failing tests.  I almost never see the whole set
 of tests run without this error.  I started seeing it last night, and
 it was not happening on my previous checkout of a few days ago.

 This was a big problem for me a few months ago and I provided a patch
 that seemed to solve the problem, but now it is back with a vengeance.
 Is anyone else seeing this problem?

Simon


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




[RESULT] Vote to release Apache Tuscany SDO Java 1.0-incubating

2007-08-09 Thread kelvin goodson
The vote to release Apache Tuscany SDO 1.0-incubating has completed
with 5 +1 votes being cast (3 IPMC binding) and no -1s (see the
tuscany-dev list vote thread [1] and the incubator-general vote
approval thread [2]).  Thank you for reviewing and voting.

I will therefore proceed with the deployment and announcement.

Kelvin.

[1] http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg21169.html
[2] http://www.mail-archive.com/[EMAIL PROTECTED]/msg14882.html

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



Re: Build problem in binding-ws-axis2

2007-08-09 Thread ant elder
This is so bad for me now that i can no longer get a build through of the
Axis2 binding, always one of the tests will fail with the connect exception.
I've just tried on a spare machine and that is working fine. Both machines
are winxp with jdk5, the only difference i can see is that the one that
works is using maven 2.0.6 and the one that doesn't is on maven 2.0.4.

   ...ant

On 8/9/07, Simon Laws [EMAIL PROTECTED] wrote:



 On 8/9/07, ant elder [EMAIL PROTECTED] wrote:
 
  Yes, i've been seeing this today as well, seemed to be fine earlier in
  the
  week.
 
 ...ant
 
  On 8/9/07, Simon Nash [EMAIL PROTECTED] wrote:
  
   I'm seeing
  java.net.ConnectException: Connection refused: connect
   errors when building binding-ws-axis2 from a clean checkout of trunk.
   The failure is slightly intermittent in terms of the number of tests
   that fail, which varies from run to run.  Cleaning and rebuilding
   doesn't help, but running with mvn rather than mvn -o seems to
  slightly
   reduce the number of failing tests.  I almost never see the whole set
   of tests run without this error.  I started seeing it last night, and
   it was not happening on my previous checkout of a few days ago.
  
   This was a big problem for me a few months ago and I provided a patch
   that seemed to solve the problem, but now it is back with a vengeance.
   Is anyone else seeing this problem?
  
  Simon
  
  
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
  
  
 
 I haven't been seeing this and that was the symptom we say before, i.e.
 some people saw it and some didn't.

 Simon



Re: Service visibility (was Re: Cross-jvm locate service)

2007-08-09 Thread Paul Golick
Kevin and I are considering in extending the current locate service with 
a mechanism that is aware of the composite context.  That is, services 
exposed by a domain level composite would be visible to all and services 
available on other composites would only be visible to the containing 
composite.

If this is not a correct interpretation of the SCA Assembly Model, please 
correct me.

Paul




Simon Nash [EMAIL PROTECTED] 
2007-08-09 06:27 AM
Please respond to
tuscany-dev@ws.apache.org


To
tuscany-dev@ws.apache.org
cc

Subject
Service visibility (was Re: Cross-jvm locate service)






This is technically feasible (see other discussion on this thread)
but I think we need to be careful about how wide open we are making
the services within a Tuscany SCA domain.  I don't think we want
every service within every domain to be wide open for anyone to reach
down from the sky and call it.  As the owner of a service, I would want
to decide whether it is exposed for local calling, distributed calling
within my domain (which can consist of multiple runtime nodes), or
revealed to other domains via some global locateService API.  I think
the right way for me to exercise this control is to create a
self-reference or a service reference within my domain, then selectively
pass this out to other domains in a manner that I can control, e.g., in
a service registry that is able to implement a governance policy.

   Simon

Kevin Williams wrote:

 I am interested in extending the current locate service capability to
 support the location of services that may be running within the same
 domain but a separate jvm.  The most straightforward approach  may be
 to dynamically create and return a service reference using the same
 Tuscany runtime elements that now create service references for
 injection in support of the @reference annotation.
 
 Any thoughts or pointers would be appreciated.
 
 Thanks,
 
 --Kevin
 




[ANNOUNCE] Apache Tuscany Java SDO 1.0-incubating released

2007-08-09 Thread kelvin goodson
The Apache Tuscany team are pleased to announce the 1.0-incubating release
of the Java SDO project.

This project provides an implementation of the SDO 2.1 specification
[1] and this is our first release to provide full coverage of the
specification. In addition to completing the few remaining SDO 2.1
features there are a number of new features relating to XML
serialization, new support for handling dynamic derivation from static
classes and improvement to the sample programs. For the full change
history take a look at [2]

To download SDO Java or for more information about the release go to:
http://incubator.apache.org/tuscany/sdo-java-releases.html

Apache Tuscany welcomes your help. Any contribution, including code,
testing, improving the documentation, or bug reporting is always
appreciated. For more information on how to get involved in Apache Tuscany
visit the website at: http://incubator.apache.org/tuscany.

Thank you for your interest in Apache Tuscany!
The Apache Tuscany Team.
---

Tuscany is an effort undergoing incubation at the Apache Software Foundation
(ASF), sponsored by the Apache Web services PMC. Incubation is required of
all newly accepted projects until a further review indicates that the
infrastructure, communications, and decision making process have stabilized
in a manner consistent with other successful ASF projects. While incubation
status is not necessarily a reflection of the completeness or stability of
the code, it does indicate that the project has yet to be fully endorsed by
the ASF.


[1] 
http://osoa.org/download/attachments/36/Java-SDO-Spec-v2.1.0-FINAL.pdf?version=1
[2] 
http://svn.apache.org/repos/asf/incubator/tuscany/tags/java/sdo/1.0-incubating/distribution/src/main/release/RELEASE_NOTES

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



[jira] Commented: (TUSCANY-1473) Define component's service with interface.wsdl ,throws 'No matching operation' error.

2007-08-09 Thread Scott Kurz (JIRA)

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

Scott Kurz commented on TUSCANY-1473:
-

This problem looks similar to TUSCANY-1342 which I opened.  I commented there 
that for a remotable interface you can't overload the method names anyway ...  
and WSDL interfaces are always remotable.



 Define component's service with interface.wsdl ,throws 'No matching 
 operation' error.
 -

 Key: TUSCANY-1473
 URL: https://issues.apache.org/jira/browse/TUSCANY-1473
 Project: Tuscany
  Issue Type: Bug
  Components: Java SCA Assembly Model
Affects Versions: Java-SCA-0.91
 Environment: Windows XP
Reporter: wangfeng
Assignee: Raymond Feng
 Fix For: Java-SCA-Next

 Attachments: testcase.zip


 I define the component's service with interface.java,the sample runs fine. 
 but when I modify the component's service with interface.wsdl,the sample 
 throws an exception.
 The throwable stack is :
 Exception in thread main java.lang.IllegalArgumentException: No matching 
 operation is found: public abstract java.lang.String 
 helloworld.HelloWorldService.getGreetings(java.lang.String)
   at 
 org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:69)
   at $Proxy10.getGreetings(Unknown Source)
   at helloworld.HelloWorldClient.main(HelloWorldClient.java:33)
 I look into the code,found the invoke mothod's input type is 'String',but the 
 method which name is 
 operation.getInputType().getLogical().get(i).getPhysical() on the 
 SourceOperation  of the InvocationChain  is always return 'Object' type,so 
 can't find an operation to match.

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



New itest folder: guidelines

2007-08-09 Thread venu reddy
Folks, I am planing to create my own folder (venu) in java/sca/itests  and
write few sample tests. Can any  one please post if  you have any guidelines
on writing pom.xml (\java\sca\itests\venu\pom.xml)  to include my sample
tests for maven to build and execute.
Thanks,
Venu.

-
A 'wish' changes nothing. A 'decision' changes everything!  Anon


[jira] Updated: (TUSCANY-1006) ChangeSummaryImpl.cachedSDOObjectChanges appears to not be thread safe

2007-08-09 Thread Ron Gavlin (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ron Gavlin updated TUSCANY-1006:


Attachment: tuscany-sdo-impl.TUSCANY-1006.patch

Patch attached. 

 ChangeSummaryImpl.cachedSDOObjectChanges appears to not be thread safe
 --

 Key: TUSCANY-1006
 URL: https://issues.apache.org/jira/browse/TUSCANY-1006
 Project: Tuscany
  Issue Type: Bug
  Components: Java SDO Implementation
Affects Versions: Java-SDO-beta1
 Environment: Sun JDK 1.4.2_11, 2-CPU server
Reporter: Ron Gavlin
Priority: Critical
 Fix For: Java-SDO-beta1

 Attachments: tuscany-sdo-impl.TUSCANY-1006.patch


 I have an application in which multiple threads access a shared 
 ChangeSummaryImpl. Each thread invokes ChangeSummaryImpl.getOldValues() 
 repeatedly. This causes one or more of the threads to enter an infinite 
 while (true) - loop in HashMap.get(Object) with the following stack trace:
 HashMap.get(Object) line: 323
 ChangeSummaryImpl.getOldValues(DataObject) line: 481
 ...
 I suspect this occurs because the access to HashMap cachedSDOObjectChanges is 
 not synchronized. 
 I have been unable as of yet to create a simple test case that demonstrates 
 the problem. In the meantime, I will try to implement a short-term fix by 
 changing line 93 of ChangeSummaryImpl 
 from
 protected HashMap cachedSDOObjectChanges = new HashMap();
 to
 protected Map cachedSDOObjectChanges = Collections.synchronizedMap(new 
 HashMap());
 I will let you know if that fixes the problem. Any insight or assistance you 
 can offer concerning this problem is appreciated. This is a show-stopper 
 problem for us.
 Regards,
 - Ron

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



[jira] Updated: (TUSCANY-1006) ChangeSummaryImpl.cachedSDOObjectChanges appears to not be thread safe

2007-08-09 Thread Ron Gavlin (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ron Gavlin updated TUSCANY-1006:


Patch Info: [Patch Available]

 ChangeSummaryImpl.cachedSDOObjectChanges appears to not be thread safe
 --

 Key: TUSCANY-1006
 URL: https://issues.apache.org/jira/browse/TUSCANY-1006
 Project: Tuscany
  Issue Type: Bug
  Components: Java SDO Implementation
Affects Versions: Java-SDO-beta1
 Environment: Sun JDK 1.4.2_11, 2-CPU server
Reporter: Ron Gavlin
Priority: Critical
 Fix For: Java-SDO-beta1

 Attachments: tuscany-sdo-impl.TUSCANY-1006.patch


 I have an application in which multiple threads access a shared 
 ChangeSummaryImpl. Each thread invokes ChangeSummaryImpl.getOldValues() 
 repeatedly. This causes one or more of the threads to enter an infinite 
 while (true) - loop in HashMap.get(Object) with the following stack trace:
 HashMap.get(Object) line: 323
 ChangeSummaryImpl.getOldValues(DataObject) line: 481
 ...
 I suspect this occurs because the access to HashMap cachedSDOObjectChanges is 
 not synchronized. 
 I have been unable as of yet to create a simple test case that demonstrates 
 the problem. In the meantime, I will try to implement a short-term fix by 
 changing line 93 of ChangeSummaryImpl 
 from
 protected HashMap cachedSDOObjectChanges = new HashMap();
 to
 protected Map cachedSDOObjectChanges = Collections.synchronizedMap(new 
 HashMap());
 I will let you know if that fixes the problem. Any insight or assistance you 
 can offer concerning this problem is appreciated. This is a show-stopper 
 problem for us.
 Regards,
 - Ron

-- 
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: New itest folder: guidelines

2007-08-09 Thread Luciano Resende
You could use some of the other project existing pom[1] as guidelines.
The poms are all inheriting the necessary configuration to run the
tests from the parent pom [2] and it looks like below :

   !-- surefire plugin configuration --
plugin
groupIdorg.apache.maven.plugins/groupId
artifactIdmaven-surefire-plugin/artifactId
version2.3/version
configuration
includes
include**/*TestCase.java/include
/includes
reportFormatbrief/reportFormat
useFilefalse/useFile
forkModeonce/forkMode
argLine-ea -Xmx128m/argLine
/configuration
/plugin


[1] 
https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/itest/contribution/pom.xml
[2] https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/pom.xml

On 8/9/07, venu reddy [EMAIL PROTECTED] wrote:
 Folks, I am planing to create my own folder (venu) in java/sca/itests  and
 write few sample tests. Can any  one please post if  you have any guidelines
 on writing pom.xml (\java\sca\itests\venu\pom.xml)  to include my sample
 tests for maven to build and execute.
 Thanks,
 Venu.

 -
 A 'wish' changes nothing. A 'decision' changes everything!  Anon



-- 
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: Build problem in binding-ws-axis2

2007-08-09 Thread Luciano Resende
Could you try moving to maven 2.0.5 on the one that does not work ?

On 8/9/07, ant elder [EMAIL PROTECTED] wrote:
 This is so bad for me now that i can no longer get a build through of the
 Axis2 binding, always one of the tests will fail with the connect exception.
 I've just tried on a spare machine and that is working fine. Both machines
 are winxp with jdk5, the only difference i can see is that the one that
 works is using maven 2.0.6 and the one that doesn't is on maven 2.0.4.

...ant

 On 8/9/07, Simon Laws [EMAIL PROTECTED] wrote:
 
 
 
  On 8/9/07, ant elder [EMAIL PROTECTED] wrote:
  
   Yes, i've been seeing this today as well, seemed to be fine earlier in
   the
   week.
  
  ...ant
  
   On 8/9/07, Simon Nash [EMAIL PROTECTED] wrote:
   
I'm seeing
   java.net.ConnectException: Connection refused: connect
errors when building binding-ws-axis2 from a clean checkout of trunk.
The failure is slightly intermittent in terms of the number of tests
that fail, which varies from run to run.  Cleaning and rebuilding
doesn't help, but running with mvn rather than mvn -o seems to
   slightly
reduce the number of failing tests.  I almost never see the whole set
of tests run without this error.  I started seeing it last night, and
it was not happening on my previous checkout of a few days ago.
   
This was a big problem for me a few months ago and I provided a patch
that seemed to solve the problem, but now it is back with a vengeance.
Is anyone else seeing this problem?
   
   Simon
   
   
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
   
   
  
  I haven't been seeing this and that was the symptom we say before, i.e.
  some people saw it and some didn't.
 
  Simon
 



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



Accessing global domain information

2007-08-09 Thread Simon Laws
I need some advice on the way the code is structures. In various places in
the code I need to get at some information that logically belongs to the sca
domain. For example,

CompositeWireBuilderImpl.connectComponentReferences()

Tries to resolve services. In the distributed case this resolution may
validly fail and I need to ask the domain whether the service is available
elsewhere. So I need access to some domain management services. Ideally I
would like to have access to a domain interface but am unsure how to plumb
it in as this kind of thing isn't generally available now. Anyone care to
offer some advice how I get at such an interface without breaking the SPIs?

Thanks

Simon


Re: New itest folder: guidelines

2007-08-09 Thread Venkata Krishnan
Hi Venu,

To start with, you could also simply copy over one of the poms in the
existing itests and modify the artifact names, dependencies etc. that
is specific to what you plan to do.

- Venkat

On 8/9/07, venu reddy [EMAIL PROTECTED] wrote:
 Folks, I am planing to create my own folder (venu) in java/sca/itests  and
 write few sample tests. Can any  one please post if  you have any guidelines
 on writing pom.xml (\java\sca\itests\venu\pom.xml)  to include my sample
 tests for maven to build and execute.
 Thanks,
 Venu.

 -
 A 'wish' changes nothing. A 'decision' changes everything!  Anon


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



mvn eclipse:eclipse fails on java

2007-08-09 Thread Ole Ersoy

Hi,

I tried checking out java and eclipseefying the build, but I get this error:

1 required artifact is missing.

for artifact:
 org.apache.tuscany.sca:sample-helloworld-dojo:war:1.0-incubating-SNAPSHOT

Thoughts?

Thanks,
- Ole



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



Re: Intent and Policy attachments on Operations

2007-08-09 Thread Jean-Sebastien Delfino

Venkata Krishnan wrote:

Hi,

The Assembly Specs and the PolicyFramework specs allows for intents
and policysets to be specified on Operations.

To implement this I'd expect that the Operation interface support
methods to hold a set of required intents and policysets.  This also
seems in sync with the schema definition for Operation.

However in the existing code this has been modeled as an Intent
instance having a list of operations over which the intent could
apply.  Similarly a PolicySet instance has a list of operations to
which the policyset applies.  Is there any specific reason for
modeling it this way?

I am in progress with changes that change this to what I have
mentioned in the second paragraph of this mail.  If I am heading in
the wrong direction, could somebody shout please.

Thanks

- Venkat

  


The Intent - operations relationship was modeled like this intentionally.

Here's why:

If you're talking about o.a.t.interfacedef.Operation, then I don't think 
it can hold intents. Operation represents a business method/operation on 
a business interface, potentially used in multiple Services or 
References... with different sets of intents.


The operation element in SCA assembly XML does not represent the 
actual operation on the business interface, it is just the syntax used 
to group the intents that apply to a given operation, within the context 
of a particular service or reference.


So basically we need to represent the association:
a set of intents - a set of operations in the context of a particular 
service/reference


There's basically two ways to represent this:
a) In an intent, list the business operations that the intent applies to
or
b) Invent a new object representing an operation used within the 
context of a reference/service, pointing to the actual operation + 
listing the intents


The assembly model being a logical model it does not have to follow the 
convolutions of the particular XML syntax, and it seems to me that (a) 
is more logical than (b). At least it'll allow us to easily find which 
operations a particular intent (and the corresponding interceptors) 
applies to.


Hope this helps.

--
Jean-Sebastien


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



[jira] Created: (TUSCANY-1523) Enhance ArtifactProcessors to be registered for file names, as well as for file types

2007-08-09 Thread Luciano Resende (JIRA)
Enhance ArtifactProcessors to be registered for file names, as well as for file 
types
-

 Key: TUSCANY-1523
 URL: https://issues.apache.org/jira/browse/TUSCANY-1523
 Project: Tuscany
  Issue Type: Improvement
Affects Versions: Java-SCA-Next
Reporter: Luciano Resende
Assignee: Luciano Resende
 Fix For: Java-SCA-Next


Details on the following thread:
http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg21338.html

-- 
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: Accessing global domain information

2007-08-09 Thread Jean-Sebastien Delfino

Simon Laws wrote:

I need some advice on the way the code is structures. In various places in
the code I need to get at some information that logically belongs to the sca
domain. For example,

CompositeWireBuilderImpl.connectComponentReferences()

Tries to resolve services. In the distributed case this resolution may
validly fail and I need to ask the domain whether the service is available
elsewhere. So I need access to some domain management services. Ideally I
would like to have access to a domain interface but am unsure how to plumb
it in as this kind of thing isn't generally available now. Anyone care to
offer some advice how I get at such an interface without breaking the SPIs?

Thanks

Simon

  
WireCompositeBuilderImpl is not an SPI, so you can pass whatever you 
want to its constructor without breaking any SPI.


But I have a preliminary question: Why do you need to ask the domain 
(management service) about remote services at that specific point in 
WireCompositeBuilderImpl?


--
Jean-Sebastien


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



Re: New itest folder: guidelines

2007-08-09 Thread Jean-Sebastien Delfino

venu reddy wrote:

Folks, I am planing to create my own folder (venu) in java/sca/itests  and
write few sample tests. Can any  one please post if  you have any guidelines
on writing pom.xml (\java\sca\itests\venu\pom.xml)  to include my sample
tests for maven to build and execute.
Thanks,
Venu.

-
A 'wish' changes nothing. A 'decision' changes everything!  Anon

  


There's no strict naming convention for itests but I'd suggest to give a 
meaningful name to the folder, clearly showing what the test case is about.


--
Jean-Sebastien


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



[jira] Resolved: (TUSCANY-1328) can not locate service from a component whose implementation is composite

2007-08-09 Thread Luciano Resende (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1328?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Luciano Resende resolved TUSCANY-1328.
--

Resolution: Fixed

This scenario is now working, and I also added a test case in recursive iTest

 can not locate service from a component whose implementation is composite
 -

 Key: TUSCANY-1328
 URL: https://issues.apache.org/jira/browse/TUSCANY-1328
 Project: Tuscany
  Issue Type: Bug
  Components: Java SCA Assembly Model
Affects Versions: Java-SCA-0.90
 Environment: Windows XP
Reporter: Yang Lei
Assignee: Luciano Resende
 Fix For: Java-SCA-Next


 default.composite:
 composite autowire=false
   local=true
   name=Iteration3Composite
   policySets=sns:secure requires=cns:confidentiality
   targetNamespace=http://foo;
   xmlns:foo=http://foo;
   xmlns=http://www.osoa.org/xmlns/sca/1.0;
   xmlns:xsd=http://www.w3.org/2001/XMLSchema;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation=http://www.osoa.org/xmlns/sca/1.0 
 http://www.osoa.org/xmlns/sca/1.0 
component name=MySimpleServiceInRecursive
 implementation.composite 
 name=foo:MySimpleService/
/component
 /composite
 MySimpleService.composite:
 composite autowire=false
   local=true
   name=MySimpleService
   policySets=sns:secure requires=cns:confidentiality
   targetNamespace=http://foo;
   xmlns:foo=http://foo;
   xmlns=http://www.osoa.org/xmlns/sca/1.0;
   xmlns:xsd=http://www.w3.org/2001/XMLSchema;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation=http://www.osoa.org/xmlns/sca/1.0 
 http://www.osoa.org/xmlns/sca/1.0 
   service name=MyServiceOrig1 
 promote=MyServiceComponentOrig/MyService
interface.java 
 interface=mysca.test.myservice.MyService/
   /service
component name=MyServiceComponentOrig
  implementation.java 
 class=mysca.test.myservice.impl.MyServiceImpl/
/component
 /composite
 MyServiceImpl
 @Service(interfaces={MyService.class, MyServiceByDate.class, 
 MyListService.class, MyListServiceByYear.class})
 public class MyServiceImpl implements MyService, MyServiceByDate, 
 MyListService, MyListServiceByYear{
 ...
 }
 When I try to locateService of  MySimpleServiceInRecursive/MyServiceOrig1, 
 got the following exception
 org.osoa.sca.ServiceRuntimeException: Service not found: 
 MySimpleServiceInRecursive/MyServiceOrig1 at 
 org.apache.tuscany.sca.host.embedded.impl.EmbeddedSCADomain.getService(EmbeddedSCADomain.java:230)
  at 
 org.apache.tuscany.sca.host.embedded.impl.SimpleCompositeContextImpl.locateService(SimpleCompositeContextImpl.java:80)
  at test.sca.tests.MySimpleServiceInRecursiveTest.setUp(Unknown Source) at 
 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at 
 sun.reflect.NativeMethodAccessorImpl.invoke
 Thanks.

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



[jira] Commented: (TUSCANY-1182) Add multi-threaded test case for data object creation

2007-08-09 Thread Kelvin Goodson (JIRA)

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

Kelvin Goodson commented on TUSCANY-1182:
-

TUSCANY-1006 also discussed a multi threaded test case.  I am closing that 
JIRA,  so the test case can be included in this fix.

 Add multi-threaded test case for data object creation
 -

 Key: TUSCANY-1182
 URL: https://issues.apache.org/jira/browse/TUSCANY-1182
 Project: Tuscany
  Issue Type: Test
  Components: Java SDO Implementation
Affects Versions: Java-SDO-M2
Reporter: Kelvin Goodson
Priority: Minor
 Fix For: Java-SDO-Next


 The fix contributed for TUSCANY-1179 includes a test case that uses 
 GroboUtils for extending the unit test capability.  This JIRA is opened to 
 decouple the fixing of the issue from the addition of the test case in order 
 to ensure that we are clean with regards to licensing.

-- 
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: mvn eclipse:eclipse fails on java

2007-08-09 Thread Luciano Resende
What version of maven are you using ? Does it work with maven 2.0.5 ?
See more info here [1]

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

On 8/9/07, Ole Ersoy [EMAIL PROTECTED] wrote:
 Hi,

 I tried checking out java and eclipseefying the build, but I get this error:

 1 required artifact is missing.

 for artifact:
   org.apache.tuscany.sca:sample-helloworld-dojo:war:1.0-incubating-SNAPSHOT

 Thoughts?

 Thanks,
 - Ole



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



[jira] Created: (TUSCANY-1524) Need to fix file permission with DAS beta1 release distros

2007-08-09 Thread Luciano Resende (JIRA)
Need to fix file permission with DAS beta1 release distros
--

 Key: TUSCANY-1524
 URL: https://issues.apache.org/jira/browse/TUSCANY-1524
 Project: Tuscany
  Issue Type: Bug
  Components: Java DAS RDB
Affects Versions: Java-DAS-beta1
Reporter: Luciano Resende
Assignee: Luciano Resende
 Fix For: Java-DAS-beta1




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



[jira] Commented: (TUSCANY-1328) can not locate service from a component whose implementation is composite

2007-08-09 Thread Paul Golick (JIRA)

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

Paul Golick commented on TUSCANY-1328:
--

What svn revision includes the fix?

 can not locate service from a component whose implementation is composite
 -

 Key: TUSCANY-1328
 URL: https://issues.apache.org/jira/browse/TUSCANY-1328
 Project: Tuscany
  Issue Type: Bug
  Components: Java SCA Assembly Model
Affects Versions: Java-SCA-0.90
 Environment: Windows XP
Reporter: Yang Lei
Assignee: Luciano Resende
 Fix For: Java-SCA-Next


 default.composite:
 composite autowire=false
   local=true
   name=Iteration3Composite
   policySets=sns:secure requires=cns:confidentiality
   targetNamespace=http://foo;
   xmlns:foo=http://foo;
   xmlns=http://www.osoa.org/xmlns/sca/1.0;
   xmlns:xsd=http://www.w3.org/2001/XMLSchema;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation=http://www.osoa.org/xmlns/sca/1.0 
 http://www.osoa.org/xmlns/sca/1.0 
component name=MySimpleServiceInRecursive
 implementation.composite 
 name=foo:MySimpleService/
/component
 /composite
 MySimpleService.composite:
 composite autowire=false
   local=true
   name=MySimpleService
   policySets=sns:secure requires=cns:confidentiality
   targetNamespace=http://foo;
   xmlns:foo=http://foo;
   xmlns=http://www.osoa.org/xmlns/sca/1.0;
   xmlns:xsd=http://www.w3.org/2001/XMLSchema;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation=http://www.osoa.org/xmlns/sca/1.0 
 http://www.osoa.org/xmlns/sca/1.0 
   service name=MyServiceOrig1 
 promote=MyServiceComponentOrig/MyService
interface.java 
 interface=mysca.test.myservice.MyService/
   /service
component name=MyServiceComponentOrig
  implementation.java 
 class=mysca.test.myservice.impl.MyServiceImpl/
/component
 /composite
 MyServiceImpl
 @Service(interfaces={MyService.class, MyServiceByDate.class, 
 MyListService.class, MyListServiceByYear.class})
 public class MyServiceImpl implements MyService, MyServiceByDate, 
 MyListService, MyListServiceByYear{
 ...
 }
 When I try to locateService of  MySimpleServiceInRecursive/MyServiceOrig1, 
 got the following exception
 org.osoa.sca.ServiceRuntimeException: Service not found: 
 MySimpleServiceInRecursive/MyServiceOrig1 at 
 org.apache.tuscany.sca.host.embedded.impl.EmbeddedSCADomain.getService(EmbeddedSCADomain.java:230)
  at 
 org.apache.tuscany.sca.host.embedded.impl.SimpleCompositeContextImpl.locateService(SimpleCompositeContextImpl.java:80)
  at test.sca.tests.MySimpleServiceInRecursiveTest.setUp(Unknown Source) at 
 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at 
 sun.reflect.NativeMethodAccessorImpl.invoke
 Thanks.

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



[jira] Updated: (TUSCANY-1328) can not locate service from a component whose implementation is composite

2007-08-09 Thread Luciano Resende (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1328?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Luciano Resende updated TUSCANY-1328:
-


Test cases in working state added in revision #564288

 can not locate service from a component whose implementation is composite
 -

 Key: TUSCANY-1328
 URL: https://issues.apache.org/jira/browse/TUSCANY-1328
 Project: Tuscany
  Issue Type: Bug
  Components: Java SCA Assembly Model
Affects Versions: Java-SCA-0.90
 Environment: Windows XP
Reporter: Yang Lei
Assignee: Luciano Resende
 Fix For: Java-SCA-Next


 default.composite:
 composite autowire=false
   local=true
   name=Iteration3Composite
   policySets=sns:secure requires=cns:confidentiality
   targetNamespace=http://foo;
   xmlns:foo=http://foo;
   xmlns=http://www.osoa.org/xmlns/sca/1.0;
   xmlns:xsd=http://www.w3.org/2001/XMLSchema;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation=http://www.osoa.org/xmlns/sca/1.0 
 http://www.osoa.org/xmlns/sca/1.0 
component name=MySimpleServiceInRecursive
 implementation.composite 
 name=foo:MySimpleService/
/component
 /composite
 MySimpleService.composite:
 composite autowire=false
   local=true
   name=MySimpleService
   policySets=sns:secure requires=cns:confidentiality
   targetNamespace=http://foo;
   xmlns:foo=http://foo;
   xmlns=http://www.osoa.org/xmlns/sca/1.0;
   xmlns:xsd=http://www.w3.org/2001/XMLSchema;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation=http://www.osoa.org/xmlns/sca/1.0 
 http://www.osoa.org/xmlns/sca/1.0 
   service name=MyServiceOrig1 
 promote=MyServiceComponentOrig/MyService
interface.java 
 interface=mysca.test.myservice.MyService/
   /service
component name=MyServiceComponentOrig
  implementation.java 
 class=mysca.test.myservice.impl.MyServiceImpl/
/component
 /composite
 MyServiceImpl
 @Service(interfaces={MyService.class, MyServiceByDate.class, 
 MyListService.class, MyListServiceByYear.class})
 public class MyServiceImpl implements MyService, MyServiceByDate, 
 MyListService, MyListServiceByYear{
 ...
 }
 When I try to locateService of  MySimpleServiceInRecursive/MyServiceOrig1, 
 got the following exception
 org.osoa.sca.ServiceRuntimeException: Service not found: 
 MySimpleServiceInRecursive/MyServiceOrig1 at 
 org.apache.tuscany.sca.host.embedded.impl.EmbeddedSCADomain.getService(EmbeddedSCADomain.java:230)
  at 
 org.apache.tuscany.sca.host.embedded.impl.SimpleCompositeContextImpl.locateService(SimpleCompositeContextImpl.java:80)
  at test.sca.tests.MySimpleServiceInRecursiveTest.setUp(Unknown Source) at 
 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at 
 sun.reflect.NativeMethodAccessorImpl.invoke
 Thanks.

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



[jira] Created: (TUSCANY-1525) documentBaseURI is incorrect in wsdl Definition

2007-08-09 Thread Lou Amodeo (JIRA)
documentBaseURI is incorrect in wsdl Definition
---

 Key: TUSCANY-1525
 URL: https://issues.apache.org/jira/browse/TUSCANY-1525
 Project: Tuscany
  Issue Type: Bug
Reporter: Lou Amodeo


I found that with the recent changes in T4 to merge wsdl documnet namespaces 
the Definition documentBaseURI attribute no longer contains the correct path to 
the base wsdl document that was loaded.  I found that if you preserve and 
restore the documentBaseURI in the WSDLDocumentProcessor around the merge this 
can be corrected.I have attached a patch.

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



[jira] Updated: (TUSCANY-1525) documentBaseURI is incorrect in wsdl Definition

2007-08-09 Thread Lou Amodeo (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1525?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lou Amodeo updated TUSCANY-1525:


Attachment: WSDLDocumentProcessor.java

 documentBaseURI is incorrect in wsdl Definition
 ---

 Key: TUSCANY-1525
 URL: https://issues.apache.org/jira/browse/TUSCANY-1525
 Project: Tuscany
  Issue Type: Bug
Reporter: Lou Amodeo
 Attachments: WSDLDocumentProcessor.java


 I found that with the recent changes in T4 to merge wsdl documnet namespaces 
 the Definition documentBaseURI attribute no longer contains the correct path 
 to the base wsdl document that was loaded.  I found that if you preserve and 
 restore the documentBaseURI in the WSDLDocumentProcessor around the merge 
 this can be corrected.I have attached a patch.

-- 
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: Dynamic registration of databindings, was: 0.91 Memory Footprint

2007-08-09 Thread Jean-Sebastien Delfino

Raymond Feng wrote:

Hi,

Your latest proposal sounds good.

Thanks,
Raymond

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

To: tuscany-dev@ws.apache.org
Sent: Sunday, August 05, 2007 7:20 PM
Subject: Re: Dynamic registration of databindings, was: 0.91 Memory 
Footprint




Jean-Sebastien Delfino wrote:

Raymond Feng wrote:

Hi,

Your proposal looks good. I think it is consistent with the pattern 
that we use to deal with unresolved models. IMO, the proxy/delegate 
objects for databindings could be:


DataBindingDelegate:
   className = my.MyDataBinding (or ClassReference?)
   DataBinding databinding; // transient instance lazily 
instantiated from the class name

   id = db1

TransformerDelegate:
   className = my.DB12DB2Transformer
   Transformer instance; // transient instance lazily instantiated 
from the class name

   source = DB1
   target = DB2
   weight = 100

Thanks,
Raymond

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

To: tuscany-dev@ws.apache.org
Sent: Sunday, August 05, 2007 10:57 AM
Subject: Dynamic registration of databindings, was: 0.91 Memory 
Footprint




Jean-Sebastien Delfino wrote:

[EMAIL PROTECTED] wrote:
We recently migrated our version of Tuscany from M2 to 0.91, and 
we noticed that the memory consumption seems to have increased 
by quite a bit. When doing memory profiling, the culprit 
appeared to be classes related to Xerces DOM 
(DeferredElementNSImpl, several other schema element related 
classes). When profiling the samples (helloworld-ws-sdo-webapp) 
and our application in M2, those classes don't seem to get 
called. We are going through the jars to determine which module 
is triggering the Xerces parser, but any suggestions would be 
greatly appreciated.




I'm not sure which Tuscany extension triggers the loading of 
Xerces yet, but the SDO-Axiom and JSON databindings and the EJB 
and Script bindings seem to pull Xerces in their pom.xml.


I noticed that in 0.91 most Tuscany extensions on the classpath 
(and most of them are going to be on the classpath if you're 
using tuscany-sca-all.jar) are aggressively loaded and 
initialized when the runtime starts. I'm going to make some 
changes to a number of binding and implementation extensions to 
allow them to be loaded only when they are actually required by 
an SCA assembly.


I hope this will help.



I looked into most of the bindings and implementations, they are 
now loaded dynamically, this should help with the footprint. I 
think we need to do the same with data bindings as they are 
dragging a lot of dependencies and in most cases people will stick 
to a single databinding in their environment.


Registering databindings should be easy:

file META-INF/services/org.apache.tuscany.sca.databinding.DataBinding
databinding class name,id=databinding id
databinding class name,id=databinding id
etc.

I'm not sure about transformers, but was thinking about something 
like this:


file META-INF/services/org.apache.tuscany.sca.databinding.Transformer
transformer class name,source=databinding 
id,target=databinding id,weight=weight
transformer class name,source=databinding 
id,target=databinding id,weight=weight

etc.

Thoughts?

--
Jean-Sebastien




Most of the data binding initialization code seems to assume that 
data bindings extend BaseDataBinding by calling 
BaseDataBinding.setRegistry(...).


I'm trying to understand why data bindings need to keep a pointer to 
the registry (actually the DataBindingExtensionPoint) and the only 
occurrence where it's used is in XMLStringDataBinding in:


   @Override
   public boolean introspect(DataType type, Annotation[] annotations) {
   if (registry.getDataBinding(type.getDataBinding()) == this) {
   type.setDataBinding(getName());
   type.setLogical(XMLType.UNKNOWN);
   return true;
   } else {
   return false;
   }
   }

I don't understand what this code is for :) What does it do?

Would the following alternative work?

   @Override
   public boolean introspect(DataType type, Annotation[] annotations) {
   if (getName().equals(type.getDataBinding())) {
   type.setLogical(XMLType.UNKNOWN);
   return true;
   } else {
   return false;
   }
   }

Thanks



or better (as it looks like data bindings can be identified by name 
or by alias)?


  @Override
  public boolean introspect(DataType type, Annotation[] annotations) {
  String dataBinding = type.getDataBinding();
  if (NAME.equals(dataBinding) || ALIASES[0].equals(dataBinding)) {
  type.setLogical(XMLType.UNKNOWN);
  return true;
  } else {
  return false;
  }
  }

--
Jean-Sebastien



I just commited some changes to load the databindings dynamically. This 
should help with the footprint.


--
Jean-Sebastien


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

Re: Release management for next release, was: SCA 0.92 release?

2007-08-09 Thread ant elder
 I guess early the following week still leaves time for an August release.
It will be real tight though so we'll all need to be quick and thorough with
our RC reviews as one problem once we get to the IPMC voting and it could
easily slip it into September.

So does taking the branch on the 21st sound ok to everyone?

   ...ant

On 8/9/07, Simon Nash [EMAIL PROTECTED] wrote:

 Ant talked about cutting the branch very early next week.  I'd prefer
 that to doing it on August 18th.  I will be away for a few days,
 returning home late on the 18th, and I could take advantage of the
 extra couple of days to help with last-minute things.

Simon

 Venkata Krishnan wrote:

  Hi,
 
  Theres been lots of discussion.  So let me summarize my understanding
  / imaginiation : -
 
  - We will cut a branch around Aug 18th for Release 0.95.  As always,
  once the branch is cut we need to be watchful on the commits
  (including getting the RMs nod to significant ones) to the branch and
  also ensure the trunk is always in sync.
  - Post 0.95, maybe a couple of weeks after the release, we'd cut
  another branch and head with that for 1.0 release.   Being a 1.0
  release, we prob. need a branch early as that so that we can whet the
  things we are targetting for the release.
 
  Is that all right ?
 
  - Venkat
 
 
 
  On 8/9/07, ant elder [EMAIL PROTECTED] wrote:
 
 On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:
 
 snip
 
 Sure, 1.0 development should happen in trunk, but I was trying to
 
 respond to a different point brought up by Raymond.
 
 On Aug 18, we are going to cut the August release branch. The point is
 about allowing small changes, bug fixes and improvements to continue in
 that branch while we are putting the release distros together, with the
 following conditions:
 
 - No completely new function, only bug fixes and improvements.
 - No changes to dependencies or structure of the distro (unless
 required
 to fix a major bug, and approved by the RM).
 - Commits go with a full build of the runtime, itests, samples and
 demos,
 and verification that the samples still work following the steps
 documented
 in their readmes.
 
 
 Sure ok, the branch wont be immediately frozen, but, and its a big but,
 we
 need to be really careful with that as every time we've allowed
 development
 to continue in the branch it has ended up delaying a release. No one can
 on
 each commit do a full review including running all the samples, reading
 all
 the readme's and vetting all the legal stuff, so things get missed. Its
 also
 hard to review things thoroughly after you've already done a review a
 couple
 of times, so things start getting missed. I'd rather delay taking the
 branch
 than plan on being able to continue development in the branch. There's
 been
 a lot of change in trunk since 0.91, maybe what we should do is start
 the
 clean up work, legal review, sorting out the distributions for all the
 module changes etc in trunk towards then end of next week but not take
 the
 branch till very early the following week with the expectation of
 getting
 RC1 out really quickly.
 
...ant
 
 
 
  -
  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: Cross-jvm locate service

2007-08-09 Thread Kevin Williams
Sebastien and Simon,

Thanks for this conversation.  Its been very helpful.  I would like to
recap a little and ask a couple of questions.

At the highest level the steps to locate a service are:

1.  Look locally and if found proceed as Tuscany does today, otherwise
2.  Dynamically create a reference for the target service using
binding and end-point URI info
3.  Create a CallableReference for that self-reference
4.  Get a ServiceReference proxy to the service from the CallableReference
5. Return the ServiceReference

For an example of how to dynamically create a reference(2) you
mentioned: CompositeConfigurationBuilderImpl.createSelfReference() and
I assume you meant CompositeBuilderImpl.createSelfReference(Component,
ComponentService), right?

Since I won't have a ComponentService available I will need to somehow
provide the required binding and InterfaceContract information.  I
think there are factories for these.

Can you point me to code that creates a CallableReference from a
ComponentReference (3) ?

Thanks!

--Kevin


On 8/9/07, Simon Laws [EMAIL PROTECTED] wrote:
 On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:
 
  Comments inline.
 
  [snip]
  Simon Laws wrote:
   Currently getServiceReference() expects a service name so we can rely
   on the implication that all contributed composites are notionally
  included
   into the domain level composite to reference a component and extend
   Sebastien's process to say.
  
 
  Just to make sure it's clear, as I'm not sure I completely follow the
  above sentence, components deployed to other nodes will not be present
  in the in-memory composite model kept in an SCAdomain object.


 I was just pointing out that regardless of where a component is actually
 running one of it's services can be identified in the domain composite using
 the component/service name by virtue of the implicit inclusion of
 contributed composites into the domain composite. This is an important
 assumption as it means that people can arbitrarily locate services deployed
 into the domain. I was making no statement about what is in the model inside
 each JVM. I assume that the model in each JVM will contain whatever
 artifacts that have been contributed to that JVM.

 So if you have different contributions for each JVM in the domain then you
 get whatever is contributed to the JVM in your model. If you want to
 reference a component that is not part  of the contributions loaded by the
 JVM then you are forced to look elsewhere in the distributed domain.

 If you want the components in a single contribution/composite to be
 distributed across JVMs then this is a different scenario. We have done this
 before with the distributed runtime by recording the component/JVM mapping
 in a topology file. This  still doesn't imply that the components will make
 it into the model (although they do in the current distributed
 implementation).

  1. look for the target component model object in the in-memory domain
   composite kept in SCADomain
  
   if found
  
   2. look for the target service on that component
   3. find on that component the self-reference created for that service
   (these self-references are automatically created by CompositeBuilder for
 
   each service provided by a component)
   4. create a CallableReference for that self-reference
   5. get a proxy to the service from the CallableReference
  
   else
  
   2. look for the named component/serivce in other nodes of the
  distributed
   (cross JVM) domain
 I am working up some interfaces to allow this to happen in the
  distributed
   domain case, for example,
  
  
  http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/distributed/src/main/java/org/apache/tuscany/sca/distributed/management/ServiceDiscovery.java
  Not implemented just yet as I'm currently looking at the sca domain
   implementation but you get the idea.
  The implementation could use some simple repository implementation or
   could derive the information from file.
  
   3. Create a local reference for the remote service
  
 
  Your if/else proposal looks good to me.
 
 Not sure of the details here but you both seem happy that this is
   straightforward.
   The thing that does look problematic is determining the
   binding.
 
  Not so problematic if it's part of the info returned by your
  ServiceDiscovery :)


 Agreed I just hadn't put it there yet because I was only dealing with the
 case where cross JVM call is constructed automatically with the sca binding.
 You are probably right that I should make it more generally applicable.

  In the distributed case I assume that all cross JVM messaging are
   handled by the sca binding.
 
  No, any binding can be used inside an SCA domain.


 Sorry I misslead you here unintentionally.What I mean is that in the case I
 am concentrating on at the moment I'm only dealing with the sca binding. I
 didn't mean to imply that you can't manually specify remote bindings between
 

[jira] Updated: (TUSCANY-1438) Change TuscanySCA Native build system to use ant

2007-08-09 Thread Brady Johnson (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1438?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Brady Johnson updated TUSCANY-1438:
---

Attachment: tuscany_patch_update9_jira1438


Adding the ability to compile in debug mode. Debug is turned on by one of the 
following:
- ant -Ddebug=true   # true, on, yes turns on debug, anything else turns it off
- set platform.properties platform.debug.compile property to true, on, or yes

Adding ability to specify additional ant targets/definitions, which would be 
useful for
defining more compilers/linkers for compiling on additional platforms. Just set 
the
platform.properties platform.external.definitions.file property to the path of 
the
external definitions file.


Brady Johnson
Lead Software Developer - HydraSCA
Rogue Wave Software - [EMAIL PROTECTED]


 Change TuscanySCA Native build system to use ant
 

 Key: TUSCANY-1438
 URL: https://issues.apache.org/jira/browse/TUSCANY-1438
 Project: Tuscany
  Issue Type: Improvement
  Components: C++ SCA
Affects Versions: Cpp-Next
 Environment: all platforms
Reporter: Brady Johnson
Priority: Minor
 Fix For: Cpp-Next

 Attachments: README_ANT_INSTALL.txt, samples.CppBigBank.build.xml, 
 tuscany_patch_update2_jira1438, tuscany_patch_update3_jira1438, 
 tuscany_patch_update4_jira1438, tuscany_patch_update5_jira1438, 
 tuscany_patch_update6_jira1438, tuscany_patch_update7_jira1438, 
 tuscany_patch_update8_jira1438, tuscany_patch_update9_jira1438, 
 TuscanySCANative.ant.display.system, tuscanySCAnative_ant.tar.gz, 
 tuscanySCAnative_ant_update1.tar.gz


 In an effort to simplify the build process, I would like to propose switching 
 over to use ant instead of automake. It will be much easier to maintain, and 
 is used by many more developers today than automake.
 Per a request by Pete Robbins to show what the build scripts would look like 
 for cpp/sca/runtime/core, I will attach a patch with the build infrastructure 
 to build, link, and install said library.
 
 Brady Johnson
 Lead Software Developer - HydraSCA
 Rogue Wave Software - [EMAIL PROTECTED]

-- 
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: Release management for next release, was: SCA 0.92 release?

2007-08-09 Thread ant elder
On 8/9/07, Venkata Krishnan [EMAIL PROTECTED] wrote:

snip

- Post 0.95, maybe a couple of weeks after the release, we'd cut
 another branch and head with that for 1.0 release.   Being a 1.0
 release, we prob. need a branch early as that so that we can whet the
 things we are targetting for the release.


Thats an interesting proposal :) Its pretty aggressive but actually sounds
ok to me, what do others think about a 1.0 in this sort of time frame?

It'll make a for a busy next few weeks to make 1.0 good...don't get a 2nd
chance for a first impression...

If we do go for this then would naming the August release 0.99 instead of
0.95 be more favourable to those who've been preferring the 1.0-beta name
over 0.95?

   ...ant


[jira] Updated: (TUSCANY-1509) Change TuscanySDO Native build system to use ant

2007-08-09 Thread Brady Johnson (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Brady Johnson updated TUSCANY-1509:
---

Attachment: tuscany_patch_update1_jira1509


Adding the ability to compile in debug mode. Debug is turned on by one of the 
following:
- ant -Ddebug=true   # true, on, yes turns on debug, anything else turns it off
- set platform.properties platform.debug.compile property to true, on, or yes

Adding ability to specify additional ant targets/definitions, which would be 
useful for
defining more compilers/linkers for compiling on additional platforms. Just set 
the
platform.properties platform.external.definitions.file property to the path of 
the
external definitions file.


Brady Johnson
Lead Software Developer - HydraSCA
Rogue Wave Software - [EMAIL PROTECTED]


 Change TuscanySDO Native build system to use ant
 

 Key: TUSCANY-1509
 URL: https://issues.apache.org/jira/browse/TUSCANY-1509
 Project: Tuscany
  Issue Type: Improvement
  Components: C++ SDO
Affects Versions: Cpp-M3
 Environment: All platforms
Reporter: Brady Johnson
 Fix For: Cpp-Next

 Attachments: build.xml, README_ANT_INSTALL.txt, 
 tuscany_patch_update1_jira1509, tuscanySDONative_ant.jar


 In an effort to simplify the build process, I would like to propose switching 
 over to use ant instead of automake. It will be much easier to maintain, and 
 is used by many more developers today than automake.
 I have already converted most of TuscanySCA to ant. I based this SDO build 
 system on the SCA build system.
 
 Brady Johnson
 Lead Software Developer - HydraSCA
 Rogue Wave Software - [EMAIL PROTECTED]

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



[SCA/SDO Native] ant : compile debug and specify additional compilers, etc

2007-08-09 Thread Brady Johnson
Hello all,
 
I added two new features to the SCA and SDO ant build system.
 
The first is the ability to compile in debug mode. To compile debug,
just do one of the following:
- from the command line ant -Ddebug=true  # set it to on, yes, or true
to turn on debugging
- platform.properties file set the platform.debug.compile property to
true, on, or yes to compile debug.
 
The second feature allows you to import additional targets/definitions
which is very useful for defining additional compilers/linkers for
compiling on additional platforms. To use this feature, in the
platform.properties file, set the platform.external.definitions.file
property to the path of the external file.
 
The patches have been uploaded to the following JIRAs
 
https://issues.apache.org/jira/browse/TUSCANY-1438(SCA)
https://issues.apache.org/jira/browse/TUSCANY-1509(SDO)
 
Can someone please submit the patches to the SCA and SDO code bases.
 
Thanks
 

Brady Johnson
Lead Software Developer - HydraSCA
Rogue Wave Software - [EMAIL PROTECTED]
 


Re: Accessing global domain information

2007-08-09 Thread Simon Laws
On 8/9/07, Simon Laws [EMAIL PROTECTED] wrote:



 On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED]  wrote:
 
  Simon Laws wrote:
   I need some advice on the way the code is structures. In various
  places in
   the code I need to get at some information that logically belongs to
  the sca
   domain. For example,
  
   CompositeWireBuilderImpl.connectComponentReferences()
  
   Tries to resolve services. In the distributed case this resolution may
   validly fail and I need to ask the domain whether the service is
  available
   elsewhere. So I need access to some domain management services.
  Ideally I
   would like to have access to a domain interface but am unsure how to
  plumb
   it in as this kind of thing isn't generally available now. Anyone care
  to
   offer some advice how I get at such an interface without breaking the
  SPIs?
  
   Thanks
  
   Simon
  
  
  WireCompositeBuilderImpl is not an SPI, so you can pass whatever you
  want to its constructor without breaking any SPI.
 
  But I have a preliminary question: Why do you need to ask the domain
  (management service) about remote services at that specific point in
  WireCompositeBuilderImpl?
 
  --
  Jean-Sebastien
 
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
  Hi Sebastien

 I was thinking about this on the drive home. Just looking back at the code
 I had missed the important point that a reference target remains unresolved
 if the target component cannot be found. I could use this instead of the
 actual service lookup at this point. The issue I have though is that the
 CompositeWireBuilder dumps the bindings from the reference if it can't find
 a matching service/binding. This will be the case if the model for the
 references service/binding is not read into the model for the current node,
 i.e. if the target component is not included in the current nodes
 contributions.

 Is it valid to only replace the current bindings with selectedBindings
 if some selected bindings have actually be found?

 Simon

Have been looking into this a little more and it seems that the list of
matched bindings takes into account the reference multiplicities and then is
used during activation to create the runtime wires so we do have to be a
little cleverer in terms of creating a dummy resolved target to keep the
bindings in play.

Anyone out there intimately familiar with the resolution process? What I
want to be able to do is have an sca binding (or any other binding for that
matter) remain in place even in the case where the referenced target is not
available in the local domain composite. Come runtime wire generation time
the binding itself can take responsibility for creating the correct
providers and invokers so that, assuming the referenced service is
remoteable, the request can be routed to the correct node.

Simon


Re: Build problem in binding-ws-axis2

2007-08-09 Thread ant elder
Doesn't seem to make any difference. I guess it must be differences between
the local repositories as everything else seems to be the same.

   ...ant

On 8/9/07, Luciano Resende [EMAIL PROTECTED] wrote:

 Could you try moving to maven 2.0.5 on the one that does not work ?

 On 8/9/07, ant elder [EMAIL PROTECTED] wrote:
  This is so bad for me now that i can no longer get a build through of
 the
  Axis2 binding, always one of the tests will fail with the connect
 exception.
  I've just tried on a spare machine and that is working fine. Both
 machines
  are winxp with jdk5, the only difference i can see is that the one that
  works is using maven 2.0.6 and the one that doesn't is on maven 2.0.4.
 
 ...ant
 
  On 8/9/07, Simon Laws [EMAIL PROTECTED] wrote:
  
  
  
   On 8/9/07, ant elder [EMAIL PROTECTED] wrote:
   
Yes, i've been seeing this today as well, seemed to be fine earlier
 in
the
week.
   
   ...ant
   
On 8/9/07, Simon Nash [EMAIL PROTECTED] wrote:

 I'm seeing
java.net.ConnectException: Connection refused: connect
 errors when building binding-ws-axis2 from a clean checkout of
 trunk.
 The failure is slightly intermittent in terms of the number of
 tests
 that fail, which varies from run to run.  Cleaning and rebuilding
 doesn't help, but running with mvn rather than mvn -o seems to
slightly
 reduce the number of failing tests.  I almost never see the whole
 set
 of tests run without this error.  I started seeing it last night,
 and
 it was not happening on my previous checkout of a few days ago.

 This was a big problem for me a few months ago and I provided a
 patch
 that seemed to solve the problem, but now it is back with a
 vengeance.
 Is anyone else seeing this problem?

Simon



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


   
   I haven't been seeing this and that was the symptom we say before, i.e
 .
   some people saw it and some didn't.
  
   Simon
  
 


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



Re: Accessing global domain information

2007-08-09 Thread Raymond Feng

Comments inline.

Thanks,
Raymond
- Original Message - 
From: Simon Laws [EMAIL PROTECTED]

To: tuscany-dev@ws.apache.org
Sent: Thursday, August 09, 2007 3:46 PM
Subject: Re: Accessing global domain information



On 8/9/07, Simon Laws [EMAIL PROTECTED] wrote:




On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED]  wrote:

 Simon Laws wrote:
  I need some advice on the way the code is structures. In various
 places in
  the code I need to get at some information that logically belongs to
 the sca
  domain. For example,
 
  CompositeWireBuilderImpl.connectComponentReferences()
 
  Tries to resolve services. In the distributed case this resolution 
  may

  validly fail and I need to ask the domain whether the service is
 available
  elsewhere. So I need access to some domain management services.
 Ideally I
  would like to have access to a domain interface but am unsure how to
 plumb
  it in as this kind of thing isn't generally available now. Anyone 
  care

 to
  offer some advice how I get at such an interface without breaking the
 SPIs?
 
  Thanks
 
  Simon
 
 
 WireCompositeBuilderImpl is not an SPI, so you can pass whatever you
 want to its constructor without breaking any SPI.

 But I have a preliminary question: Why do you need to ask the domain
 (management service) about remote services at that specific point in
 WireCompositeBuilderImpl?

 --
 Jean-Sebastien


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

 Hi Sebastien

I was thinking about this on the drive home. Just looking back at the 
code
I had missed the important point that a reference target remains 
unresolved

if the target component cannot be found. I could use this instead of the
actual service lookup at this point. The issue I have though is that the
CompositeWireBuilder dumps the bindings from the reference if it can't 
find

a matching service/binding. This will be the case if the model for the
references service/binding is not read into the model for the current 
node,

i.e. if the target component is not included in the current nodes
contributions.

Is it valid to only replace the current bindings with selectedBindings
if some selected bindings have actually be found?

Simon


Have been looking into this a little more and it seems that the list of
matched bindings takes into account the reference multiplicities and then 
is

used during activation to create the runtime wires so we do have to be a
little cleverer in terms of creating a dummy resolved target to keep the
bindings in play.



Let's assume the reference is wired to a remote SCA service for this 
discussion. For non-SCA services, it's simpler as we just have to pick a 
binding locally for the reference and the binding URI will be good enough 
for the routing.


There are two factors here:

1) What information is required from the service side for the reference side 
to choose the right binding?


service: {service uri in the domain, a list of bindings} (I intentionally 
skip the intent/policy stuff here). The key is that should be able to build 
a call routing to this service endpoint.


2) When should we try to do the matching between the reference and the 
service?


In some cases, the remote service information is not available when the 
runtime wires are constructed. It means we have to defer the process when 
the reference is used.



Anyone out there intimately familiar with the resolution process? What I
want to be able to do is have an sca binding (or any other binding for 
that
matter) remain in place even in the case where the referenced target is 
not

available in the local domain composite. Come runtime wire generation time
the binding itself can take responsibility for creating the correct
providers and invokers so that, assuming the referenced service is
remoteable, the request can be routed to the correct node.

Simon




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



[jira] Updated: (TUSCANY-1375) C++ SDO spec portability: C++ type definition API

2007-08-09 Thread Michael Yoder (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1375?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Yoder updated TUSCANY-1375:
---

Attachment: TUSCANY-1375.txt

This patch privatizes the internal helper classes used in SDO for processing 
XML Schema, and removes their use from SCA.

 C++ SDO spec portability: C++ type definition API
 -

 Key: TUSCANY-1375
 URL: https://issues.apache.org/jira/browse/TUSCANY-1375
 Project: Tuscany
  Issue Type: Bug
  Components: C++ SDO, C++ Specification
Affects Versions: Cpp-M3
 Environment: API issue - all platforms
Reporter: Michael Yoder
 Fix For: Cpp-Next

 Attachments: TUSCANY-1375.txt


 The Tuscany C++ SDO implementation has off-spec type definition classes which 
 are used by SCA. These should be removed or used only internally by the 
 implementation until or unless they can be incorporated into the 
 specification. 
 -Original Message-
 From: Michael Yoder 
 Sent: Thursday, June 21, 2007 8:45 PM
 To: 'tuscany-dev@ws.apache.org'
 Subject: C++ SDO spec portability: C++ type definition API
 Hi,
 C++ Tuscany SDO extends type definition API with the off-spec classes 
 PropertyDefinition and TypeDefinition, which are used externally by SCA. 
 We also have found the C++ SDO specification type definition API lacking, and 
 have added the Impl member function 
 DataFactoryImpl::define(DataObjectPtr) 
 to parallel the Java type definition API using DataObject's of Types 
 commonj.sdo#Type and commonj.sdo#Property.
 Should a Jira be raised for these classes to be removed or kept internal to 
 Tuscany C++ SDO? Is there API here that it would be good to present to the 
 comittee?
 Thanks,
 Michael Yoder
 Rogue Wave Software - [EMAIL PROTECTED] Software Developer - HydraSDO

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



FW: [jira] Updated: (TUSCANY-1375) C++ SDO spec portability: C++ type definition API

2007-08-09 Thread Michael Yoder
Hi,

I have uploaded a patch for TUSCANY-1375. If it could be reviewed and
applied that would be great.

Thanks,

Michael
Rogue Wave Software, Inc. - [EMAIL PROTECTED] Software Developer -
HydraSDO

-Original Message-
From: Michael Yoder (JIRA) [mailto:[EMAIL PROTECTED] 
Sent: Thursday, August 09, 2007 9:16 PM
To: Michael Yoder
Subject: [jira] Updated: (TUSCANY-1375) C++ SDO spec portability: C++
type definition API


 [
https://issues.apache.org/jira/browse/TUSCANY-1375?page=com.atlassian.ji
ra.plugin.system.issuetabpanels:all-tabpanel ]

Michael Yoder updated TUSCANY-1375:
---

Attachment: TUSCANY-1375.txt

This patch privatizes the internal helper classes used in SDO for
processing XML Schema, and removes their use from SCA.

 C++ SDO spec portability: C++ type definition API
 -

 Key: TUSCANY-1375
 URL:
https://issues.apache.org/jira/browse/TUSCANY-1375
 Project: Tuscany
  Issue Type: Bug
  Components: C++ SDO, C++ Specification
Affects Versions: Cpp-M3
 Environment: API issue - all platforms
Reporter: Michael Yoder
 Fix For: Cpp-Next

 Attachments: TUSCANY-1375.txt


 The Tuscany C++ SDO implementation has off-spec type definition
classes which are used by SCA. These should be removed or used only
internally by the implementation until or unless they can be
incorporated into the specification. 
 -Original Message-
 From: Michael Yoder
 Sent: Thursday, June 21, 2007 8:45 PM
 To: 'tuscany-dev@ws.apache.org'
 Subject: C++ SDO spec portability: C++ type definition API Hi,
 C++ Tuscany SDO extends type definition API with the off-spec classes
PropertyDefinition and TypeDefinition, which are used externally by SCA.

 We also have found the C++ SDO specification type definition API 
 lacking, and have added the Impl member function
 DataFactoryImpl::define(DataObjectPtr)
 to parallel the Java type definition API using DataObject's of Types
commonj.sdo#Type and commonj.sdo#Property.
 Should a Jira be raised for these classes to be removed or kept
internal to Tuscany C++ SDO? Is there API here that it would be good to
present to the comittee?
 Thanks,
 Michael Yoder
 Rogue Wave Software - [EMAIL PROTECTED] Software Developer - 
 HydraSDO

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



[jira] Commented: (TUSCANY-1465) Allow passing ResultDescriptor for dynamic Commands

2007-08-09 Thread Amita Vadhavkar (JIRA)

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

Amita Vadhavkar commented on TUSCANY-1465:
--

1) The way ResultDescriptor can be replaced on a Command is thru set method. 
And in this, I am 
replacing the resultSetShape for the Command (way to notify) as well. In 
forming ResultSetShape, 
the list gets sorted. So the sorting will happen once for each new call to 
setResultDescriptor(). 
So, where will be the problem?

2) Done.  (always return a new ArrayList from sorter)

3) ResultDescriptor is generated code, so directly can not add comparable 
interface to it.
Another way will be extend ResultDescriptor implement Comparable in this 
extension and
use this as wrapper over ResultDescriptor internal to DAS. But as the present 
requirement
is just a simple sorting of index, avoided it and used directly 
ResultDescriptor. Any suggestion?

4) renamed to set/getResultDescriptors(). Also added 
addResultDescriptor(ResultDescriptor), 
removeResultDescriptor(ResultDescriptor), and getResultDescriptor(int) and used 
in a test case.
Please see below, if it looks OK, so I will submit patch based on this.
/**
 * Add/replace based on index (=0)embedded in resultDescriptor else add at 
end
 * @param resultDescriptor
 */
void addResultDescriptor(ResultDescriptor resultDescriptor);

/**
 * remove ResultDescriptor at given index(=0) and return same. If not
 * present return null. For -ve index, return null
 * @param index
 * @return
 */
ResultDescriptor removeResultDescriptor(int index);

/**
 * Remove resultDescriptor only if matched for index(=0), name, type, 
schema
 * name and table name and return same, else return null For -ve index, 
ignore  
 *  index and if unique match for rest of the attriutes, remove/return, if 
multiple
 *  matches found, throw RuntimeException
 * @param resultDescriptor
 * @return
 */
ResultDescriptor removeResultDescriptor(ResultDescriptor resultDescriptor);

/**
 * Return resultDescriptor if exact match for index(=0) found  
 * else return null;
 * 
 * @param index
 * @return
 */
ResultDescriptor getResultDescriptor(int index);

5) ListType , is JDK5 feature and recently we resolved JIRA-1237 to ensure 
compatibility with JDK1.4
so avoided use of JDK5.

6) The test fail is the test case code problem ..please see..from 1464 last 
comment -
{I took a clean base from trunk and applied 1464 and 1465 to it.
The problem was in the test cases of 1465 and I am creating new patch for it.
(As 1464 is now catching absence of PK from select, the 2 cases were failing in 
1465, as in converter
column name should match table (dbms) column name and can not be aby arbitrary 
names)
.}

 Allow passing ResultDescriptor for dynamic Commands
 ---

 Key: TUSCANY-1465
 URL: https://issues.apache.org/jira/browse/TUSCANY-1465
 Project: Tuscany
  Issue Type: Bug
  Components: Java DAS RDB
Affects Versions: Java-DAS-Next
Reporter: Amita Vadhavkar
Assignee: Amita Vadhavkar
 Fix For: Java-DAS-Next

 Attachments: 1465.patch


 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg19886.html
 Action for the issue discussed in above mail.

-- 
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: Accessing global domain information

2007-08-09 Thread Simon Laws
On 8/10/07, Raymond Feng [EMAIL PROTECTED] wrote:

 Comments inline.

 Thanks,
 Raymond
 - Original Message -
 From: Simon Laws [EMAIL PROTECTED]
 To: tuscany-dev@ws.apache.org
 Sent: Thursday, August 09, 2007 3:46 PM
 Subject: Re: Accessing global domain information


  On 8/9/07, Simon Laws [EMAIL PROTECTED] wrote:
 
 
 
  On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED]  wrote:
  
   Simon Laws wrote:
I need some advice on the way the code is structures. In various
   places in
the code I need to get at some information that logically belongs
 to
   the sca
domain. For example,
   
CompositeWireBuilderImpl.connectComponentReferences()
   
Tries to resolve services. In the distributed case this resolution
may
validly fail and I need to ask the domain whether the service is
   available
elsewhere. So I need access to some domain management services.
   Ideally I
would like to have access to a domain interface but am unsure how
 to
   plumb
it in as this kind of thing isn't generally available now. Anyone
care
   to
offer some advice how I get at such an interface without breaking
 the
   SPIs?
   
Thanks
   
Simon
   
   
   WireCompositeBuilderImpl is not an SPI, so you can pass whatever you
   want to its constructor without breaking any SPI.
  
   But I have a preliminary question: Why do you need to ask the domain
   (management service) about remote services at that specific point in
   WireCompositeBuilderImpl?
  
   --
   Jean-Sebastien
  
  
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
  
   Hi Sebastien
 
  I was thinking about this on the drive home. Just looking back at the
  code
  I had missed the important point that a reference target remains
  unresolved
  if the target component cannot be found. I could use this instead of
 the
  actual service lookup at this point. The issue I have though is that
 the
  CompositeWireBuilder dumps the bindings from the reference if it can't
  find
  a matching service/binding. This will be the case if the model for the
  references service/binding is not read into the model for the current
  node,
  i.e. if the target component is not included in the current nodes
  contributions.
 
  Is it valid to only replace the current bindings with
 selectedBindings
  if some selected bindings have actually be found?
 
  Simon
 
  Have been looking into this a little more and it seems that the list of
  matched bindings takes into account the reference multiplicities and
 then
  is
  used during activation to create the runtime wires so we do have to be a
  little cleverer in terms of creating a dummy resolved target to keep the
  bindings in play.
 

 Let's assume the reference is wired to a remote SCA service for this
 discussion. For non-SCA services, it's simpler as we just have to pick a
 binding locally for the reference and the binding URI will be good enough
 for the routing.

 There are two factors here:

 1) What information is required from the service side for the reference
 side
 to choose the right binding?

 service: {service uri in the domain, a list of bindings} (I intentionally
 skip the intent/policy stuff here). The key is that should be able to
 build
 a call routing to this service endpoint.

 2) When should we try to do the matching between the reference and the
 service?

 In some cases, the remote service information is not available when the
 runtime wires are constructed. It means we have to defer the process when
 the reference is used.

  Anyone out there intimately familiar with the resolution process? What I
  want to be able to do is have an sca binding (or any other binding for
  that
  matter) remain in place even in the case where the referenced target is
  not
  available in the local domain composite. Come runtime wire generation
 time
  the binding itself can take responsibility for creating the correct
  providers and invokers so that, assuming the referenced service is
  remoteable, the request can be routed to the correct node.
 
  Simon
 


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

 Thanks Raymond, I'm with you there. I'm not sure whether you are agreeing
or disagreeing that maintaining the list of unresolved targets will be
problematic. I'm going ahead on the basis that we need to maintain the list,
i.e. I'll change

if (!targets.isEmpty() ) {
// Add all the effective bindings

to

if (!targets.isEmpty() 
!selectedBindings.isEmpty()) {
// Add all the effective bindings

at the bottom of

CompositeWireBuilderImpl.connectComponentReferences()

and see how I get on. In this way the candidate bindings hang around until
later on in the case 

[jira] Updated: (TUSCANY-1464) Wrong query results when SELECT misses PKs

2007-08-09 Thread Amita Vadhavkar (JIRA)

 [ 
https://issues.apache.org/jira/browse/TUSCANY-1464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Amita Vadhavkar updated TUSCANY-1464:
-

Attachment: 1464.patch

1)In case of if (columnName.indexOf(_ID) = 0), and indeed if column name in 
database table is  just _ID, then later in the same class,
String pkTableName = columnName.substring(0, columnName.indexOf(_ID)); 
will give null value to pkTableName and so List pkTableProperties = (List) 
tableToPropertyMap.get(pkTableName); will have null list pkTableProperties.
So, if ((pkTableProperties != null)  (pkTableProperties.contains(ID))) {
configWrapper.addImpliedRelationship(pkTableName, fkTableName, 
columnName);
}
will do nothing as first condition will fail.

So, I guess we are safe here. As anyways, COC will not be able to do anything 
with a column _ID
___
2)case sensitivity, this is a good point, as just below this code, we are 
liberal about it for detecting COC based PK (allow any case) and as you said, 
for FK purpose, we are not allowing only _ID. I can fix this, even though this 
is not part of the problem statement of this patch, in 
ResultMetadata. (Our documentation does not talk anything about case, but at 
least
we should treat both PK and FK in same manner, so if PK is allowed id,Id,iD, 
ID, same should be with FK)
___
3)
if (!rawDataFromRow.hasValidPrimaryKey() ||
(rawDataFromRow.hasNullPrimaryKey()  !rawDataFromRow.isTableEmpty()))

The above check is for case, when any one PK in table has null Data , but there 
are other not null data columns in the row, this should be exception case
-
if (tableObject == null
 rawDataFromRow.getPrimaryKeyValues() != null
 !rawDataFromRow.getPrimaryKeyValues().contains(null)
 rawDataFromRow.getPrimaryKeyValues().size() 0)

The above check, it can be modified/simplified as below, as 
getPrimaryKeyValues() can never be  null (see  constructor of TableData) and 
with new hasNullPrimaryKey() check, PrimaryKeyValues will not contain null  and 
as hasValidPK is true, getPrimaryKeyValues().size() will be 0

if (tableObject == null
 !rawDataFromRow.hasNullPrimaryKey())
___
4) I took a clean base from trunk and applied 1464 and 1465 to it.
The problem was in the test cases of 1465 and I am creating new patch for it.
(As 1464 is now catching absence of PK from select, the 2 cases were failing in 
1465, as in converter column name should match table (dbms) column name and can 
not be aby arbitrary names)

Please see the 1464.patch dated Aug 10 for fixes of 2) and 3) above.

 Wrong query results when SELECT misses PKs
 --

 Key: TUSCANY-1464
 URL: https://issues.apache.org/jira/browse/TUSCANY-1464
 Project: Tuscany
  Issue Type: Bug
  Components: Java DAS RDB
Affects Versions: Java-DAS-Next
Reporter: Amita Vadhavkar
Assignee: Amita Vadhavkar
 Fix For: Java-DAS-Next

 Attachments: 1464.patch, 1464.patch, 1464.patch, 1464.patch


 http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg20322.html
 Fix the bug uncovered in above mail discussion.

-- 
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: New dependencies on binding-sca? was: svn commit: r563787 - in /incubator/tuscany/java/sca/modules: binding-ejb/pom.xml core-spring/pom.xml host-embedded/pom.xml

2007-08-09 Thread Simon Laws
On 8/9/07, Jean-Sebastien Delfino [EMAIL PROTECTED] wrote:

 Simon Laws wrote:
  The binding-ejb one was a mistake
  host-embedded/ReallySmallRuntimeBuilder creates a SCABindingProcessor
 
  I'll go fix the first one and test against the latest code
 
  Thanks
 
 

 Ah OK. If you're talking about this:

 SCABindingProcessor scaBindingProcessor =
 new SCABindingProcessor(assemblyFactory, policyFactory,
 scaBindingFactory);
 StAXArtifactProcessorExtensionPoint processors =

 registry.getExtensionPoint(StAXArtifactProcessorExtensionPoint.class);
 processors.addArtifactProcessor(scaBindingProcessor);

 then, as part of factoring the SCA binding out, this initialization
 should move the binding-sca module, right?

 --
 Jean-Sebastien


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

 Actually Sebastien, you are right (no change there ;-). Now that the
binding-sca-xml module is loaded via the services mechanism this manual
registration is not required. I'll go remove it.

Thanks for spotting that

Smon