You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Andre Juffer <an...@oulu.fi> on 2013/08/14 15:20:13 UTC
[C3] Calling another from REST resource
Is it actually possible to call an another block (say block A) from within a REST resource that resides in block B?
Thanks,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi
WWW:
www.biochem.oulu.fi/Biocomputing/
www.oulu.fi/biocenter/biocomputing-and-bioinformatics
www.oulu.fi/biocenter/groups/juffer
StrucBioCat, www.strucbiocat.oulu.fi
Triacle Biocomputing, www.triacle-bc.com
RE: [C3] Calling another from REST resource
Posted by Andre Juffer <an...@oulu.fi>.
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi
WWW:
www.biochem.oulu.fi/Biocomputing/
www.oulu.fi/biocenter/biocomputing-and-bioinformatics
www.oulu.fi/biocenter/groups/juffer
StrucBioCat, www.strucbiocat.oulu.fi
Triacle Biocomputing, www.triacle-bc.com
________________________________
From: Thorsten Scherler [scherler@gmail.com]
Sent: Monday, August 19, 2013 12:18 PM
To: users@cocoon.apache.org
Subject: Re: [C3] Calling another from REST resource
On 08/19/2013 10:58 AM, Andre Juffer wrote:
Hi Thorsten,
I already thought that it would down to what you suggested. Seems to me that calling a pipeline in the way you suggested is the most logical way, as the other block has everything in place to receive requests for accounts, given the hash. I will give it a try.
Another possibility would be to create a java pipe. See e.g. for an usage see
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/sample/SendMailPipeService.java
and
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/mail/pipelines/pipes/EmailPlainPipe.java
This gives you a broader possibility. For example in one project I extended the pipeline interface to work with a hashmap and I injected the values via the pipe. This way I did not need to bother with the stream but directly could access the values I needed in the pipeline.
OK, I will check this option as well.
Thanks!
salu2
Best,
André
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Thorsten Scherler [scherler@gmail.com<ma...@gmail.com>]
Sent: Monday, August 19, 2013 10:12 AM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: Re: [C3] Calling another from REST resource
On 08/15/2013 04:34 PM, Andre Juffer wrote:
To clarify my question:
I need to identify persons when they access a resource. On the client side, a temporal hash is stored. On the server side, I use that hash to connect with an account associated with a person. The hash is not unique, it is assigned upon signing in, and lost after signing out. When accessing the resource, say a VideoResource in block A,
@POST
Response doSomething(@PathParam("hash") String hash)
{
Account account = .... // Use the hash here.
this.facade_.doSomething(account, ....);
return someResponse;
}
The account information is obtained from another block (B), which is accessed by various others block for the same purpose. These blocks represent various services for which a person may have an account.
Thus, the line with
Account account = .... // Use the hash here.
would access another block.
Can this easily be facilitated with cocoon3 at this stage?
thanks for your time,
The question is do you need to call/use a java class or do you want to call a pipeline?
To call another java class a simple import should do, when you have the dep to the other block set.
In case of calling another pipeline should be working with http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.html servlet:
final URL url = new URL("servlet:blockB:/someUrl");
HTH
salu2
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Andre Juffer [andre.juffer@oulu.fi<ma...@oulu.fi>]
Sent: Wednesday, August 14, 2013 4:20 PM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: [C3] Calling another from REST resource
Is it actually possible to call an another block (say block A) from within a REST resource that resides in block B?
Thanks,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
--
Thorsten Scherler <scherler.at.gmail.com>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Thorsten Scherler <scherler.at.gmail.com>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
RE: [C3] Calling another from REST resource
Posted by Andre Juffer <an...@oulu.fi>.
Yes, I already had a look at the TextResponse earlier,
http://svn.apache.org/repos/asf/cocoon/cocoon3/trunk/cocoon-rest/src/main/java/org/apache/cocoon/rest/controller/response/TextResponse.java
and now you confirmed my thoughts.
Great, thanks!
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi
WWW:
www.biochem.oulu.fi/Biocomputing/
www.oulu.fi/biocenter/biocomputing-and-bioinformatics
www.oulu.fi/biocenter/groups/juffer
StrucBioCat, www.strucbiocat.oulu.fi
Triacle Biocomputing, www.triacle-bc.com
________________________________
From: Javier Puerto [jpuerto@gmail.com]
Sent: Monday, August 26, 2013 12:38 PM
To: users@cocoon.apache.org
Subject: Re: [C3] Calling another from REST resource
2013/8/26 Andre Juffer <an...@oulu.fi>>
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Javier Puerto [jpuerto@gmail.com<ma...@gmail.com>]
Sent: Monday, August 26, 2013 12:04 PM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: Re: [C3] Calling another from REST resource
2013/8/26 Andre Juffer <an...@oulu.fi>>
I am working on using the Java pipe. So far so so good. I have two issues:
1. I intend to use a TextSerializer in the final step as I need just a single String returned from the other block, but I cannot find the org.apache.cocoon.sax.component.TextSerializer:
http://cocoon.apache.org/3.0/apidocs/org/apache/cocoon/sax/component/TextSerializer.html
It extends org.apache.cocoon.sax.component.XMLSerializer. All other classes are fine (Pipeline, SAXPipelineComponent, etc). Is there an extra dependency required. If so, which one?
TextSerializer class is in "cocoon-sax" project, the spring declaration is available at "cocoon-sitemap" project in file "cocoon-sitemap/src/main/resources/META-INF/cocoon/spring/cocoon-pipeline-component.xml". You only need these two projects as dependencies.
OK, thanks. I will have a look.
2. Also, the example of a VideoController contains the line:
return new Page("servlet:/screen/video", data);
In which package is Page located? I just cannot find it.
I can't see the fragment code you shown and neither the Page class. Where did you get the example?
Anyway, seems like you are trying to create a controller.
That is correct.
You can check the samples to check what kind of object is expected from the controller because probably the Page class inherits from another object.
I am referring to
http://cocoon.apache.org/3.0/features.html
There is an example towards the end.
I see now, seems like you have found a bug in the documentation and needs to be updated. The Page object must implement the interface RestResponse that you can see in the "cocoon-rest" project. I've checked the source and we have some base implementation in the same package, "org.apache.cocoon.rest.response". You can choose a base implementation, extends or implements your own according to your needs. See:
http://svn.apache.org/repos/asf/cocoon/cocoon3/trunk/cocoon-rest/src/main/java/org/apache/cocoon/rest/controller/response/
Thanks,
André
On 08/19/2013 12:19 PM, Thorsten Scherler wrote:
On 08/19/2013 10:58 AM, Andre Juffer wrote:
Hi Thorsten,
I already thought that it would down to what you suggested. Seems to me that calling a pipeline in the way you suggested is the most logical way, as the other block has everything in place to receive requests for accounts, given the hash. I will give it a try.
Another possibility would be to create a java pipe. See e.g. for an usage see
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/sample/SendMailPipeService.java
and
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/mail/pipelines/pipes/EmailPlainPipe.java
This gives you a broader possibility. For example in one project I extended the pipeline interface to work with a hashmap and I injected the values via the pipe. This way I did not need to bother with the stream but directly could access the values I needed in the pipeline.
salu2
Best,
André
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Thorsten Scherler [scherler@gmail.com<ma...@gmail.com>]
Sent: Monday, August 19, 2013 10:12 AM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: Re: [C3] Calling another from REST resource
On 08/15/2013 04:34 PM, Andre Juffer wrote:
To clarify my question:
I need to identify persons when they access a resource. On the client side, a temporal hash is stored. On the server side, I use that hash to connect with an account associated with a person. The hash is not unique, it is assigned upon signing in, and lost after signing out. When accessing the resource, say a VideoResource in block A,
@POST
Response doSomething(@PathParam("hash") String hash)
{
Account account = .... // Use the hash here.
this.facade_.doSomething(account, ....);
return someResponse;
}
The account information is obtained from another block (B), which is accessed by various others block for the same purpose. These blocks represent various services for which a person may have an account.
Thus, the line with
Account account = .... // Use the hash here.
would access another block.
Can this easily be facilitated with cocoon3 at this stage?
thanks for your time,
The question is do you need to call/use a java class or do you want to call a pipeline?
To call another java class a simple import should do, when you have the dep to the other block set.
In case of calling another pipeline should be working with http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.html servlet:
final URL url = new URL("servlet:blockB:/someUrl");
HTH
salu2
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Andre Juffer [andre.juffer@oulu.fi<ma...@oulu.fi>]
Sent: Wednesday, August 14, 2013 4:20 PM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: [C3] Calling another from REST resource
Is it actually possible to call an another block (say block A) from within a REST resource that resides in block B?
Thanks,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
--
Thorsten Scherler <scherler.at.gmail.com<http://scherler.at.gmail.com>>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Thorsten Scherler <scherler.at.gmail.com<http://scherler.at.gmail.com>>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Andre H. Juffer | Phone: +358-294-481161<tel:%2B358-294-481161>
Biocenter Oulu and | Fax: +358-8-553-1141<tel:%2B358-8-553-1141>
Department of Biochemistry | Email: andre.juffer@oulu.fi<ma...@oulu.fi>
University of Oulu, Finland | WWW: www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
StruBioCat | WWW: www.strubiocat.oulu.fi<http://www.strubiocat.oulu.fi>
Triacle Biocomputing | WWW: www.triacle-bc.com<http://www.triacle-bc.com>
Re: [C3] Calling another from REST resource
Posted by Andre Juffer <an...@oulu.fi>.
On 08/26/2013 12:39 PM, Javier Puerto wrote:
2013/8/26 Andre Juffer <an...@oulu.fi>>
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Javier Puerto [jpuerto@gmail.com<ma...@gmail.com>]
Sent: Monday, August 26, 2013 12:04 PM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: Re: [C3] Calling another from REST resource
2013/8/26 Andre Juffer <an...@oulu.fi>>
I am working on using the Java pipe. So far so so good. I have two issues:
1. I intend to use a TextSerializer in the final step as I need just a single String returned from the other block, but I cannot find the org.apache.cocoon.sax.component.TextSerializer:
http://cocoon.apache.org/3.0/apidocs/org/apache/cocoon/sax/component/TextSerializer.html
It extends org.apache.cocoon.sax.component.XMLSerializer. All other classes are fine (Pipeline, SAXPipelineComponent, etc). Is there an extra dependency required. If so, which one?
TextSerializer class is in "cocoon-sax" project, the spring declaration is available at "cocoon-sitemap" project in file "cocoon-sitemap/src/main/resources/META-INF/cocoon/spring/cocoon-pipeline-component.xml". You only need these two projects as dependencies.
OK, thanks. I will have a look.
As far as I can see, the TextSerializer does exist in trunk, but not in cocoon-sax-3.0.0-alpha-3
In any case, I got it working, as the response of the other blog is very simple (like <element>someValue</element, no big deal).
2. Also, the example of a VideoController contains the line:
return new Page("servlet:/screen/video", data);
In which package is Page located? I just cannot find it.
I can't see the fragment code you shown and neither the Page class. Where did you get the example?
Anyway, seems like you are trying to create a controller.
That is correct.
You can check the samples to check what kind of object is expected from the controller because probably the Page class inherits from another object.
I am referring to
http://cocoon.apache.org/3.0/features.html
There is an example towards the end.
I see now, seems like you have found a bug in the documentation and needs to be updated. The Page object must implement the interface RestResponse that you can see in the "cocoon-rest" project. I've checked the source and we have some base implementation in the same package, "org.apache.cocoon.rest.response". You can choose a base implementation, extends or implements your own according to your needs. See:
http://svn.apache.org/repos/asf/cocoon/cocoon3/trunk/cocoon-rest/src/main/java/org/apache/cocoon/rest/controller/response/
Thanks,
André
On 08/19/2013 12:19 PM, Thorsten Scherler wrote:
On 08/19/2013 10:58 AM, Andre Juffer wrote:
Hi Thorsten,
I already thought that it would down to what you suggested. Seems to me that calling a pipeline in the way you suggested is the most logical way, as the other block has everything in place to receive requests for accounts, given the hash. I will give it a try.
Another possibility would be to create a java pipe. See e.g. for an usage see
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/sample/SendMailPipeService.java
and
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/mail/pipelines/pipes/EmailPlainPipe.java
This gives you a broader possibility. For example in one project I extended the pipeline interface to work with a hashmap and I injected the values via the pipe. This way I did not need to bother with the stream but directly could access the values I needed in the pipeline.
salu2
Best,
André
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Thorsten Scherler [scherler@gmail.com<ma...@gmail.com>]
Sent: Monday, August 19, 2013 10:12 AM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: Re: [C3] Calling another from REST resource
On 08/15/2013 04:34 PM, Andre Juffer wrote:
To clarify my question:
I need to identify persons when they access a resource. On the client side, a temporal hash is stored. On the server side, I use that hash to connect with an account associated with a person. The hash is not unique, it is assigned upon signing in, and lost after signing out. When accessing the resource, say a VideoResource in block A,
@POST
Response doSomething(@PathParam("hash") String hash)
{
Account account = .... // Use the hash here.
this.facade_.doSomething(account, ....);
return someResponse;
}
The account information is obtained from another block (B), which is accessed by various others block for the same purpose. These blocks represent various services for which a person may have an account.
Thus, the line with
Account account = .... // Use the hash here.
would access another block.
Can this easily be facilitated with cocoon3 at this stage?
thanks for your time,
The question is do you need to call/use a java class or do you want to call a pipeline?
To call another java class a simple import should do, when you have the dep to the other block set.
In case of calling another pipeline should be working with http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.html servlet:
final URL url = new URL("servlet:blockB:/someUrl");
HTH
salu2
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Andre Juffer [andre.juffer@oulu.fi<ma...@oulu.fi>]
Sent: Wednesday, August 14, 2013 4:20 PM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: [C3] Calling another from REST resource
Is it actually possible to call an another block (say block A) from within a REST resource that resides in block B?
Thanks,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
--
Thorsten Scherler <scherler.at.gmail.com<http://scherler.at.gmail.com>>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Thorsten Scherler <scherler.at.gmail.com<http://scherler.at.gmail.com>>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Andre H. Juffer | Phone: +358-294-481161<tel:%2B358-294-481161>
Biocenter Oulu and | Fax: +358-8-553-1141<tel:%2B358-8-553-1141>
Department of Biochemistry | Email: andre.juffer@oulu.fi<ma...@oulu.fi>
University of Oulu, Finland | WWW: www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
StruBioCat | WWW: www.strubiocat.oulu.fi<http://www.strubiocat.oulu.fi>
Triacle Biocomputing | WWW: www.triacle-bc.com<http://www.triacle-bc.com>
--
Andre H. Juffer | Phone: +358-294-481161
Biocenter Oulu and | Fax: +358-8-553-1141
Department of Biochemistry | Email: andre.juffer@oulu.fi<ma...@oulu.fi>
University of Oulu, Finland | WWW: www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
StruBioCat | WWW: www.strubiocat.oulu.fi<http://www.strubiocat.oulu.fi>
Triacle Biocomputing | WWW: www.triacle-bc.com<http://www.triacle-bc.com>
Re: [C3] Calling another from REST resource
Posted by Javier Puerto <jp...@gmail.com>.
2013/8/26 Andre Juffer <an...@oulu.fi>
>
>
>
>
> ------------------------------------------------------------------------------------------------------------------------------
> Andre H. Juffer
> Biocenter Oulu and Department of Biochemistry
> University of Oulu, Finland
> Phone: +358-294-481161
> Email: andre.juffer@oulu.fi
> WWW:
> www.biochem.oulu.fi/Biocomputing/
> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
> www.oulu.fi/biocenter/groups/juffer
>
> StrucBioCat, www.strucbiocat.oulu.fi
> Triacle Biocomputing, www.triacle-bc.com
>
> ------------------------------
> *From:* Javier Puerto [jpuerto@gmail.com]
> *Sent:* Monday, August 26, 2013 12:04 PM
>
> *To:* users@cocoon.apache.org
> *Subject:* Re: [C3] Calling another from REST resource
>
>
>
>
> 2013/8/26 Andre Juffer <an...@oulu.fi>
>
>> I am working on using the Java pipe. So far so so good. I have two
>> issues:
>>
>> 1. I intend to use a TextSerializer in the final step as I need just a
>> single String returned from the other block, but I cannot find the
>> org.apache.cocoon.sax.component.TextSerializer:
>>
>>
>> http://cocoon.apache.org/3.0/apidocs/org/apache/cocoon/sax/component/TextSerializer.html
>>
>> It extends org.apache.cocoon.sax.component.XMLSerializer. All other
>> classes are fine (Pipeline, SAXPipelineComponent, etc). Is there an extra
>> dependency required. If so, which one?
>>
>
> TextSerializer class is in "cocoon-sax" project, the spring declaration
> is available at "cocoon-sitemap" project in file
> "cocoon-sitemap/src/main/resources/META-INF/cocoon/spring/cocoon-pipeline-component.xml".
> You only need these two projects as dependencies.
>
> OK, thanks. I will have a look.
>
>
>
>>
>> 2. Also, the example of a VideoController contains the line:
>>
>> return new Page("servlet:/screen/video", data);
>>
>> In which package is Page located? I just cannot find it.
>>
>
> I can't see the fragment code you shown and neither the Page class.
> Where did you get the example?
> Anyway, seems like you are trying to create a controller.
>
> That is correct.
>
>
> You can check the samples to check what kind of object is expected from
> the controller because probably the Page class inherits from another object.
>
> I am referring to
>
> http://cocoon.apache.org/3.0/features.html
>
> There is an example towards the end.
>
I see now, seems like you have found a bug in the documentation and needs
to be updated. The Page object must implement the interface RestResponse
that you can see in the "cocoon-rest" project. I've checked the source and
we have some base implementation in the same package,
"org.apache.cocoon.rest.response". You can choose a base implementation,
extends or implements your own according to your needs. See:
http://svn.apache.org/repos/asf/cocoon/cocoon3/trunk/cocoon-rest/src/main/java/org/apache/cocoon/rest/controller/response/
>
>
>
>>
>> Thanks,
>> André
>>
>>
>>
>> On 08/19/2013 12:19 PM, Thorsten Scherler wrote:
>>
>> On 08/19/2013 10:58 AM, Andre Juffer wrote:
>>
>> Hi Thorsten,
>>
>> I already thought that it would down to what you suggested. Seems to me
>> that calling a pipeline in the way you suggested is the most logical way,
>> as the other block has everything in place to receive requests for
>> accounts, given the hash. I will give it a try.
>>
>>
>> Another possibility would be to create a java pipe. See e.g. for an usage
>> see
>>
>> cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/sample/SendMailPipeService.java
>> and
>>
>> cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/mail/pipelines/pipes/EmailPlainPipe.java
>>
>> This gives you a broader possibility. For example in one project I
>> extended the pipeline interface to work with a hashmap and I injected the
>> values via the pipe. This way I did not need to bother with the stream but
>> directly could access the values I needed in the pipeline.
>>
>> salu2
>>
>>
>> Best,
>> André
>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------------------------------------------------------------
>> Andre H. Juffer
>> Biocenter Oulu and Department of Biochemistry
>> University of Oulu, Finland
>> Phone: +358-294-481161
>> Email: andre.juffer@oulu.fi
>> WWW:
>> www.biochem.oulu.fi/Biocomputing/
>> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
>> www.oulu.fi/biocenter/groups/juffer
>>
>> StrucBioCat, www.strucbiocat.oulu.fi
>> Triacle Biocomputing, www.triacle-bc.com
>>
>> ------------------------------
>> *From:* Thorsten Scherler [scherler@gmail.com]
>> *Sent:* Monday, August 19, 2013 10:12 AM
>> *To:* users@cocoon.apache.org
>> *Subject:* Re: [C3] Calling another from REST resource
>>
>> On 08/15/2013 04:34 PM, Andre Juffer wrote:
>>
>> To clarify my question:
>>
>> I need to identify persons when they access a resource. On the client
>> side, a temporal hash is stored. On the server side, I use that hash to
>> connect with an account associated with a person. The hash is not unique,
>> it is assigned upon signing in, and lost after signing out. When accessing
>> the resource, say a VideoResource in block A,
>>
>> @POST
>> Response doSomething(@PathParam("hash") String hash)
>> {
>> Account account = .... // Use the hash here.
>>
>> this.facade_.doSomething(account, ....);
>>
>> return someResponse;
>> }
>>
>> The account information is obtained from another block (B), which is
>> accessed by various others block for the same purpose. These blocks
>> represent various services for which a person may have an account.
>>
>> Thus, the line with
>>
>> Account account = .... // Use the hash here.
>>
>> would access another block.
>>
>> Can this easily be facilitated with cocoon3 at this stage?
>>
>> thanks for your time,
>>
>>
>>
>> The question is do you need to call/use a java class or do you want to
>> call a pipeline?
>>
>> To call another java class a simple import should do, when you have the
>> dep to the other block set.
>>
>> In case of calling another pipeline should be working with
>> http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.htmlservlet:
>> final URL url = new URL("servlet:blockB:/someUrl");
>>
>> HTH
>>
>> salu2
>>
>>
>>
>> ------------------------------------------------------------------------------------------------------------------------------
>> Andre H. Juffer
>> Biocenter Oulu and Department of Biochemistry
>> University of Oulu, Finland
>> Phone: +358-294-481161
>> Email: andre.juffer@oulu.fi
>> WWW:
>> www.biochem.oulu.fi/Biocomputing/
>> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
>> www.oulu.fi/biocenter/groups/juffer
>>
>> StrucBioCat, www.strucbiocat.oulu.fi
>> Triacle Biocomputing, www.triacle-bc.com
>>
>> ------------------------------
>> *From:* Andre Juffer [andre.juffer@oulu.fi]
>> *Sent:* Wednesday, August 14, 2013 4:20 PM
>> *To:* users@cocoon.apache.org
>> *Subject:* [C3] Calling another from REST resource
>>
>> Is it actually possible to call an another block (say block A) from
>> within a REST resource that resides in block B?
>>
>> Thanks,
>>
>>
>>
>> ------------------------------------------------------------------------------------------------------------------------------
>> Andre H. Juffer
>> Biocenter Oulu and Department of Biochemistry
>> University of Oulu, Finland
>> Phone: +358-294-481161
>> Email: andre.juffer@oulu.fi
>> WWW:
>> www.biochem.oulu.fi/Biocomputing/
>> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
>> www.oulu.fi/biocenter/groups/juffer
>>
>> StrucBioCat, www.strucbiocat.oulu.fi
>> Triacle Biocomputing, www.triacle-bc.com
>>
>>
>>
>> --
>> Thorsten Scherler <scherler.at.gmail.com>
>> codeBusters S.L. - web based systems
>> <consulting, training and solutions>
>> http://www.codebusters.es/
>>
>>
>>
>> --
>> Thorsten Scherler <scherler.at.gmail.com>
>> codeBusters S.L. - web based systems
>> <consulting, training and solutions>
>> http://www.codebusters.es/
>>
>>
>>
>> --
>> Andre H. Juffer | Phone: +358-294-481161
>> Biocenter Oulu and | Fax: +358-8-553-1141
>> Department of Biochemistry | Email: andre.juffer@oulu.fi
>> University of Oulu, Finland | WWW: www.biochem.oulu.fi/Biocomputing/
>> StruBioCat | WWW: www.strubiocat.oulu.fi
>> Triacle Biocomputing | WWW: www.triacle-bc.com
>>
>>
>
RE: [C3] Calling another from REST resource
Posted by Andre Juffer <an...@oulu.fi>.
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi
WWW:
www.biochem.oulu.fi/Biocomputing/
www.oulu.fi/biocenter/biocomputing-and-bioinformatics
www.oulu.fi/biocenter/groups/juffer
StrucBioCat, www.strucbiocat.oulu.fi
Triacle Biocomputing, www.triacle-bc.com
________________________________
From: Javier Puerto [jpuerto@gmail.com]
Sent: Monday, August 26, 2013 12:04 PM
To: users@cocoon.apache.org
Subject: Re: [C3] Calling another from REST resource
2013/8/26 Andre Juffer <an...@oulu.fi>>
I am working on using the Java pipe. So far so so good. I have two issues:
1. I intend to use a TextSerializer in the final step as I need just a single String returned from the other block, but I cannot find the org.apache.cocoon.sax.component.TextSerializer:
http://cocoon.apache.org/3.0/apidocs/org/apache/cocoon/sax/component/TextSerializer.html
It extends org.apache.cocoon.sax.component.XMLSerializer. All other classes are fine (Pipeline, SAXPipelineComponent, etc). Is there an extra dependency required. If so, which one?
TextSerializer class is in "cocoon-sax" project, the spring declaration is available at "cocoon-sitemap" project in file "cocoon-sitemap/src/main/resources/META-INF/cocoon/spring/cocoon-pipeline-component.xml". You only need these two projects as dependencies.
OK, thanks. I will have a look.
2. Also, the example of a VideoController contains the line:
return new Page("servlet:/screen/video", data);
In which package is Page located? I just cannot find it.
I can't see the fragment code you shown and neither the Page class. Where did you get the example?
Anyway, seems like you are trying to create a controller.
That is correct.
You can check the samples to check what kind of object is expected from the controller because probably the Page class inherits from another object.
I am referring to
http://cocoon.apache.org/3.0/features.html
There is an example towards the end.
Thanks,
André
On 08/19/2013 12:19 PM, Thorsten Scherler wrote:
On 08/19/2013 10:58 AM, Andre Juffer wrote:
Hi Thorsten,
I already thought that it would down to what you suggested. Seems to me that calling a pipeline in the way you suggested is the most logical way, as the other block has everything in place to receive requests for accounts, given the hash. I will give it a try.
Another possibility would be to create a java pipe. See e.g. for an usage see
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/sample/SendMailPipeService.java
and
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/mail/pipelines/pipes/EmailPlainPipe.java
This gives you a broader possibility. For example in one project I extended the pipeline interface to work with a hashmap and I injected the values via the pipe. This way I did not need to bother with the stream but directly could access the values I needed in the pipeline.
salu2
Best,
André
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Thorsten Scherler [scherler@gmail.com<ma...@gmail.com>]
Sent: Monday, August 19, 2013 10:12 AM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: Re: [C3] Calling another from REST resource
On 08/15/2013 04:34 PM, Andre Juffer wrote:
To clarify my question:
I need to identify persons when they access a resource. On the client side, a temporal hash is stored. On the server side, I use that hash to connect with an account associated with a person. The hash is not unique, it is assigned upon signing in, and lost after signing out. When accessing the resource, say a VideoResource in block A,
@POST
Response doSomething(@PathParam("hash") String hash)
{
Account account = .... // Use the hash here.
this.facade_.doSomething(account, ....);
return someResponse;
}
The account information is obtained from another block (B), which is accessed by various others block for the same purpose. These blocks represent various services for which a person may have an account.
Thus, the line with
Account account = .... // Use the hash here.
would access another block.
Can this easily be facilitated with cocoon3 at this stage?
thanks for your time,
The question is do you need to call/use a java class or do you want to call a pipeline?
To call another java class a simple import should do, when you have the dep to the other block set.
In case of calling another pipeline should be working with http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.html servlet:
final URL url = new URL("servlet:blockB:/someUrl");
HTH
salu2
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Andre Juffer [andre.juffer@oulu.fi<ma...@oulu.fi>]
Sent: Wednesday, August 14, 2013 4:20 PM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: [C3] Calling another from REST resource
Is it actually possible to call an another block (say block A) from within a REST resource that resides in block B?
Thanks,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161<tel:%2B358-294-481161>
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
--
Thorsten Scherler <scherler.at.gmail.com<http://scherler.at.gmail.com>>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Thorsten Scherler <scherler.at.gmail.com<http://scherler.at.gmail.com>>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Andre H. Juffer | Phone: +358-294-481161<tel:%2B358-294-481161>
Biocenter Oulu and | Fax: +358-8-553-1141<tel:%2B358-8-553-1141>
Department of Biochemistry | Email: andre.juffer@oulu.fi<ma...@oulu.fi>
University of Oulu, Finland | WWW: www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
StruBioCat | WWW: www.strubiocat.oulu.fi<http://www.strubiocat.oulu.fi>
Triacle Biocomputing | WWW: www.triacle-bc.com<http://www.triacle-bc.com>
Re: [C3] Calling another from REST resource
Posted by Andre Juffer <an...@oulu.fi>.
On 08/26/2013 12:05 PM, Javier Puerto wrote:
2013/8/26 Andre Juffer <an...@oulu.fi>>
I am working on using the Java pipe. So far so so good. I have two issues:
1. I intend to use a TextSerializer in the final step as I need just a single String returned from the other block, but I cannot find the org.apache.cocoon.sax.component.TextSerializer:
http://cocoon.apache.org/3.0/apidocs/org/apache/cocoon/sax/component/TextSerializer.html
It extends org.apache.cocoon.sax.component.XMLSerializer. All other classes are fine (Pipeline, SAXPipelineComponent, etc). Is there an extra dependency required. If so, which one?
TextSerializer class is in "cocoon-sax" project, the spring declaration is available at "cocoon-sitemap" project in file "cocoon-sitemap/src/main/resources/META-INF/cocoon/spring/cocoon-pipeline-component.xml". You only need these two projects as dependencies.
Sorry, but this doesn't seem to be correct. Note that I rely on the 3.0.0-alpha-3 release. Thus, in pom.xml, one would have
<dependency>
<groupId>org.apache.cocoon.sax</groupId>
<artifactId>cocoon-sax</artifactId>
<version>3.0.0-alpha-3</version>
</dependency>
<dependency>
<groupId>org.apache.cocoon.sitemap</groupId>
<artifactId>cocoon-sitemap</artifactId>
<version>3.0.0-alpha-3</version>
</dependency>
according to
http://mvnrepository.com/artifact/org.apache.cocoon.sax/cocoon-sax/3.0.0-alpha-3
http://mvnrepository.com/artifact/org.apache.cocoon.sitemap/cocoon-sitemap/3.0.0-alpha-3
None of these contain the org.apache.cocoon.sax.component.TextSerializer.
--
Andre H. Juffer | Phone: +358-294-481161
Biocenter Oulu and | Fax: +358-8-553-1141
Department of Biochemistry | Email: andre.juffer@oulu.fi<ma...@oulu.fi>
University of Oulu, Finland | WWW: www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
StruBioCat | WWW: www.strubiocat.oulu.fi<http://www.strubiocat.oulu.fi>
Triacle Biocomputing | WWW: www.triacle-bc.com<http://www.triacle-bc.com>
Re: [C3] Calling another from REST resource
Posted by Javier Puerto <jp...@gmail.com>.
2013/8/26 Andre Juffer <an...@oulu.fi>
> I am working on using the Java pipe. So far so so good. I have two
> issues:
>
> 1. I intend to use a TextSerializer in the final step as I need just a
> single String returned from the other block, but I cannot find the
> org.apache.cocoon.sax.component.TextSerializer:
>
>
> http://cocoon.apache.org/3.0/apidocs/org/apache/cocoon/sax/component/TextSerializer.html
>
> It extends org.apache.cocoon.sax.component.XMLSerializer. All other
> classes are fine (Pipeline, SAXPipelineComponent, etc). Is there an extra
> dependency required. If so, which one?
>
TextSerializer class is in "cocoon-sax" project, the spring declaration is
available at "cocoon-sitemap" project in file
"cocoon-sitemap/src/main/resources/META-INF/cocoon/spring/cocoon-pipeline-component.xml".
You only need these two projects as dependencies.
>
> 2. Also, the example of a VideoController contains the line:
>
> return new Page("servlet:/screen/video", data);
>
> In which package is Page located? I just cannot find it.
>
I can't see the fragment code you shown and neither the Page class. Where
did you get the example?
Anyway, seems like you are trying to create a controller. You can check the
samples to check what kind of object is expected from the controller
because probably the Page class inherits from another object.
>
> Thanks,
> André
>
>
>
> On 08/19/2013 12:19 PM, Thorsten Scherler wrote:
>
> On 08/19/2013 10:58 AM, Andre Juffer wrote:
>
> Hi Thorsten,
>
> I already thought that it would down to what you suggested. Seems to me
> that calling a pipeline in the way you suggested is the most logical way,
> as the other block has everything in place to receive requests for
> accounts, given the hash. I will give it a try.
>
>
> Another possibility would be to create a java pipe. See e.g. for an usage
> see
>
> cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/sample/SendMailPipeService.java
> and
>
> cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/mail/pipelines/pipes/EmailPlainPipe.java
>
> This gives you a broader possibility. For example in one project I
> extended the pipeline interface to work with a hashmap and I injected the
> values via the pipe. This way I did not need to bother with the stream but
> directly could access the values I needed in the pipeline.
>
> salu2
>
>
> Best,
> André
>
>
>
>
>
> ------------------------------------------------------------------------------------------------------------------------------
> Andre H. Juffer
> Biocenter Oulu and Department of Biochemistry
> University of Oulu, Finland
> Phone: +358-294-481161
> Email: andre.juffer@oulu.fi
> WWW:
> www.biochem.oulu.fi/Biocomputing/
> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
> www.oulu.fi/biocenter/groups/juffer
>
> StrucBioCat, www.strucbiocat.oulu.fi
> Triacle Biocomputing, www.triacle-bc.com
>
> ------------------------------
> *From:* Thorsten Scherler [scherler@gmail.com]
> *Sent:* Monday, August 19, 2013 10:12 AM
> *To:* users@cocoon.apache.org
> *Subject:* Re: [C3] Calling another from REST resource
>
> On 08/15/2013 04:34 PM, Andre Juffer wrote:
>
> To clarify my question:
>
> I need to identify persons when they access a resource. On the client
> side, a temporal hash is stored. On the server side, I use that hash to
> connect with an account associated with a person. The hash is not unique,
> it is assigned upon signing in, and lost after signing out. When accessing
> the resource, say a VideoResource in block A,
>
> @POST
> Response doSomething(@PathParam("hash") String hash)
> {
> Account account = .... // Use the hash here.
>
> this.facade_.doSomething(account, ....);
>
> return someResponse;
> }
>
> The account information is obtained from another block (B), which is
> accessed by various others block for the same purpose. These blocks
> represent various services for which a person may have an account.
>
> Thus, the line with
>
> Account account = .... // Use the hash here.
>
> would access another block.
>
> Can this easily be facilitated with cocoon3 at this stage?
>
> thanks for your time,
>
>
>
> The question is do you need to call/use a java class or do you want to
> call a pipeline?
>
> To call another java class a simple import should do, when you have the
> dep to the other block set.
>
> In case of calling another pipeline should be working with
> http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.htmlservlet:
> final URL url = new URL("servlet:blockB:/someUrl");
>
> HTH
>
> salu2
>
>
>
> ------------------------------------------------------------------------------------------------------------------------------
> Andre H. Juffer
> Biocenter Oulu and Department of Biochemistry
> University of Oulu, Finland
> Phone: +358-294-481161
> Email: andre.juffer@oulu.fi
> WWW:
> www.biochem.oulu.fi/Biocomputing/
> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
> www.oulu.fi/biocenter/groups/juffer
>
> StrucBioCat, www.strucbiocat.oulu.fi
> Triacle Biocomputing, www.triacle-bc.com
>
> ------------------------------
> *From:* Andre Juffer [andre.juffer@oulu.fi]
> *Sent:* Wednesday, August 14, 2013 4:20 PM
> *To:* users@cocoon.apache.org
> *Subject:* [C3] Calling another from REST resource
>
> Is it actually possible to call an another block (say block A) from
> within a REST resource that resides in block B?
>
> Thanks,
>
>
>
> ------------------------------------------------------------------------------------------------------------------------------
> Andre H. Juffer
> Biocenter Oulu and Department of Biochemistry
> University of Oulu, Finland
> Phone: +358-294-481161
> Email: andre.juffer@oulu.fi
> WWW:
> www.biochem.oulu.fi/Biocomputing/
> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
> www.oulu.fi/biocenter/groups/juffer
>
> StrucBioCat, www.strucbiocat.oulu.fi
> Triacle Biocomputing, www.triacle-bc.com
>
>
>
> --
> Thorsten Scherler <scherler.at.gmail.com>
> codeBusters S.L. - web based systems
> <consulting, training and solutions>
> http://www.codebusters.es/
>
>
>
> --
> Thorsten Scherler <scherler.at.gmail.com>
> codeBusters S.L. - web based systems
> <consulting, training and solutions>
> http://www.codebusters.es/
>
>
>
> --
> Andre H. Juffer | Phone: +358-294-481161
> Biocenter Oulu and | Fax: +358-8-553-1141
> Department of Biochemistry | Email: andre.juffer@oulu.fi
> University of Oulu, Finland | WWW: www.biochem.oulu.fi/Biocomputing/
> StruBioCat | WWW: www.strubiocat.oulu.fi
> Triacle Biocomputing | WWW: www.triacle-bc.com
>
>
Re: [C3] Calling another from REST resource
Posted by Andre Juffer <an...@oulu.fi>.
I am working on using the Java pipe. So far so so good. I have two issues:
1. I intend to use a TextSerializer in the final step as I need just a single String returned from the other block, but I cannot find the org.apache.cocoon.sax.component.TextSerializer:
http://cocoon.apache.org/3.0/apidocs/org/apache/cocoon/sax/component/TextSerializer.html
It extends org.apache.cocoon.sax.component.XMLSerializer. All other classes are fine (Pipeline, SAXPipelineComponent, etc). Is there an extra dependency required. If so, which one?
2. Also, the example of a VideoController contains the line:
return new Page("servlet:/screen/video", data);
In which package is Page located? I just cannot find it.
Thanks,
André
On 08/19/2013 12:19 PM, Thorsten Scherler wrote:
On 08/19/2013 10:58 AM, Andre Juffer wrote:
Hi Thorsten,
I already thought that it would down to what you suggested. Seems to me that calling a pipeline in the way you suggested is the most logical way, as the other block has everything in place to receive requests for accounts, given the hash. I will give it a try.
Another possibility would be to create a java pipe. See e.g. for an usage see
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/sample/SendMailPipeService.java
and
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/mail/pipelines/pipes/EmailPlainPipe.java
This gives you a broader possibility. For example in one project I extended the pipeline interface to work with a hashmap and I injected the values via the pipe. This way I did not need to bother with the stream but directly could access the values I needed in the pipeline.
salu2
Best,
André
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Thorsten Scherler [scherler@gmail.com<ma...@gmail.com>]
Sent: Monday, August 19, 2013 10:12 AM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: Re: [C3] Calling another from REST resource
On 08/15/2013 04:34 PM, Andre Juffer wrote:
To clarify my question:
I need to identify persons when they access a resource. On the client side, a temporal hash is stored. On the server side, I use that hash to connect with an account associated with a person. The hash is not unique, it is assigned upon signing in, and lost after signing out. When accessing the resource, say a VideoResource in block A,
@POST
Response doSomething(@PathParam("hash") String hash)
{
Account account = .... // Use the hash here.
this.facade_.doSomething(account, ....);
return someResponse;
}
The account information is obtained from another block (B), which is accessed by various others block for the same purpose. These blocks represent various services for which a person may have an account.
Thus, the line with
Account account = .... // Use the hash here.
would access another block.
Can this easily be facilitated with cocoon3 at this stage?
thanks for your time,
The question is do you need to call/use a java class or do you want to call a pipeline?
To call another java class a simple import should do, when you have the dep to the other block set.
In case of calling another pipeline should be working with http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.html servlet:
final URL url = new URL("servlet:blockB:/someUrl");
HTH
salu2
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Andre Juffer [andre.juffer@oulu.fi<ma...@oulu.fi>]
Sent: Wednesday, August 14, 2013 4:20 PM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: [C3] Calling another from REST resource
Is it actually possible to call an another block (say block A) from within a REST resource that resides in block B?
Thanks,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
--
Thorsten Scherler <scherler.at.gmail.com>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Thorsten Scherler <scherler.at.gmail.com>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
--
Andre H. Juffer | Phone: +358-294-481161
Biocenter Oulu and | Fax: +358-8-553-1141
Department of Biochemistry | Email: andre.juffer@oulu.fi<ma...@oulu.fi>
University of Oulu, Finland | WWW: www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
StruBioCat | WWW: www.strubiocat.oulu.fi<http://www.strubiocat.oulu.fi>
Triacle Biocomputing | WWW: www.triacle-bc.com<http://www.triacle-bc.com>
Re: [C3] Calling another from REST resource
Posted by Thorsten Scherler <sc...@gmail.com>.
On 08/19/2013 10:58 AM, Andre Juffer wrote:
> Hi Thorsten,
>
> I already thought that it would down to what you suggested. Seems to
> me that calling a pipeline in the way you suggested is the most
> logical way, as the other block has everything in place to receive
> requests for accounts, given the hash. I will give it a try.
Another possibility would be to create a java pipe. See e.g. for an
usage see
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/sample/SendMailPipeService.java
and
cocoon-rest-optional/src/main/java/org/apache/cocoon/rest/optional/mail/pipelines/pipes/EmailPlainPipe.java
This gives you a broader possibility. For example in one project I
extended the pipeline interface to work with a hashmap and I injected
the values via the pipe. This way I did not need to bother with the
stream but directly could access the values I needed in the pipeline.
salu2
>
> Best,
> André
>
>
>
>
> ------------------------------------------------------------------------------------------------------------------------------
> Andre H. Juffer
> Biocenter Oulu and Department of Biochemistry
> University of Oulu, Finland
> Phone: +358-294-481161
> Email: andre.juffer@oulu.fi
> WWW:
> www.biochem.oulu.fi/Biocomputing/
> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
> www.oulu.fi/biocenter/groups/juffer
>
> StrucBioCat, www.strucbiocat.oulu.fi
> Triacle Biocomputing, www.triacle-bc.com
>
> ------------------------------------------------------------------------
> *From:* Thorsten Scherler [scherler@gmail.com]
> *Sent:* Monday, August 19, 2013 10:12 AM
> *To:* users@cocoon.apache.org
> *Subject:* Re: [C3] Calling another from REST resource
>
> On 08/15/2013 04:34 PM, Andre Juffer wrote:
>> To clarify my question:
>>
>> I need to identify persons when they access a resource. On the client
>> side, a temporal hash is stored. On the server side, I use that hash
>> to connect with an account associated with a person. The hash is not
>> unique, it is assigned upon signing in, and lost after signing out.
>> When accessing the resource, say a VideoResource in block A,
>>
>> @POST
>> Response doSomething(@PathParam("hash") String hash)
>> {
>> Account account = .... // Use the hash here.
>>
>> this.facade_.doSomething(account, ....);
>>
>> return someResponse;
>> }
>>
>> The account information is obtained from another block (B), which is
>> accessed by various others block for the same purpose. These blocks
>> represent various services for which a person may have an account.
>>
>> Thus, the line with
>>
>> Account account = .... // Use the hash here.
>>
>> would access another block.
>>
>> Can this easily be facilitated with cocoon3 at this stage?
>>
>> thanks for your time,
>>
>
>
> The question is do you need to call/use a java class or do you want to
> call a pipeline?
>
> To call another java class a simple import should do, when you have
> the dep to the other block set.
>
> In case of calling another pipeline should be working with
> http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.html
> servlet:
> final URL url = new URL("servlet:blockB:/someUrl");
>
> HTH
>
> salu2
>
>>
>> ------------------------------------------------------------------------------------------------------------------------------
>> Andre H. Juffer
>> Biocenter Oulu and Department of Biochemistry
>> University of Oulu, Finland
>> Phone: +358-294-481161
>> Email: andre.juffer@oulu.fi
>> WWW:
>> www.biochem.oulu.fi/Biocomputing/
>> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
>> www.oulu.fi/biocenter/groups/juffer
>>
>> StrucBioCat, www.strucbiocat.oulu.fi
>> Triacle Biocomputing, www.triacle-bc.com
>>
>> ------------------------------------------------------------------------
>> *From:* Andre Juffer [andre.juffer@oulu.fi]
>> *Sent:* Wednesday, August 14, 2013 4:20 PM
>> *To:* users@cocoon.apache.org
>> *Subject:* [C3] Calling another from REST resource
>>
>> Is it actually possible to call an another block (say block A) from
>> within a REST resource that resides in block B?
>>
>> Thanks,
>>
>>
>> ------------------------------------------------------------------------------------------------------------------------------
>> Andre H. Juffer
>> Biocenter Oulu and Department of Biochemistry
>> University of Oulu, Finland
>> Phone: +358-294-481161
>> Email: andre.juffer@oulu.fi
>> WWW:
>> www.biochem.oulu.fi/Biocomputing/
>> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
>> www.oulu.fi/biocenter/groups/juffer
>>
>> StrucBioCat, www.strucbiocat.oulu.fi
>> Triacle Biocomputing, www.triacle-bc.com
>>
>
>
> --
> Thorsten Scherler <scherler.at.gmail.com>
> codeBusters S.L. - web based systems
> <consulting, training and solutions>
>
> http://www.codebusters.es/
--
Thorsten Scherler <scherler.at.gmail.com>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
RE: [C3] Calling another from REST resource
Posted by Andre Juffer <an...@oulu.fi>.
Hi Thorsten,
I already thought that it would down to what you suggested. Seems to me that calling a pipeline in the way you suggested is the most logical way, as the other block has everything in place to receive requests for accounts, given the hash. I will give it a try.
Best,
André
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi
WWW:
www.biochem.oulu.fi/Biocomputing/
www.oulu.fi/biocenter/biocomputing-and-bioinformatics
www.oulu.fi/biocenter/groups/juffer
StrucBioCat, www.strucbiocat.oulu.fi
Triacle Biocomputing, www.triacle-bc.com
________________________________
From: Thorsten Scherler [scherler@gmail.com]
Sent: Monday, August 19, 2013 10:12 AM
To: users@cocoon.apache.org
Subject: Re: [C3] Calling another from REST resource
On 08/15/2013 04:34 PM, Andre Juffer wrote:
To clarify my question:
I need to identify persons when they access a resource. On the client side, a temporal hash is stored. On the server side, I use that hash to connect with an account associated with a person. The hash is not unique, it is assigned upon signing in, and lost after signing out. When accessing the resource, say a VideoResource in block A,
@POST
Response doSomething(@PathParam("hash") String hash)
{
Account account = .... // Use the hash here.
this.facade_.doSomething(account, ....);
return someResponse;
}
The account information is obtained from another block (B), which is accessed by various others block for the same purpose. These blocks represent various services for which a person may have an account.
Thus, the line with
Account account = .... // Use the hash here.
would access another block.
Can this easily be facilitated with cocoon3 at this stage?
thanks for your time,
The question is do you need to call/use a java class or do you want to call a pipeline?
To call another java class a simple import should do, when you have the dep to the other block set.
In case of calling another pipeline should be working with http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.html servlet:
final URL url = new URL("servlet:blockB:/someUrl");
HTH
salu2
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
________________________________
From: Andre Juffer [andre.juffer@oulu.fi<ma...@oulu.fi>]
Sent: Wednesday, August 14, 2013 4:20 PM
To: users@cocoon.apache.org<ma...@cocoon.apache.org>
Subject: [C3] Calling another from REST resource
Is it actually possible to call an another block (say block A) from within a REST resource that resides in block B?
Thanks,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi<ma...@oulu.fi>
WWW:
www.biochem.oulu.fi/Biocomputing/<http://www.biochem.oulu.fi/Biocomputing/>
www.oulu.fi/biocenter/biocomputing-and-bioinformatics<http://www.oulu.fi/biocenter/biocomputing-and-bioinformatics>
www.oulu.fi/biocenter/groups/juffer<http://www.oulu.fi/biocenter/groups/juffer>
StrucBioCat, www.strucbiocat.oulu.fi<http://www.strucbiocat.oulu.fi>
Triacle Biocomputing, www.triacle-bc.com<http://www.triacle-bc.com>
--
Thorsten Scherler <scherler.at.gmail.com>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
Re: [C3] Calling another from REST resource
Posted by Thorsten Scherler <sc...@gmail.com>.
On 08/15/2013 04:34 PM, Andre Juffer wrote:
> To clarify my question:
>
> I need to identify persons when they access a resource. On the client
> side, a temporal hash is stored. On the server side, I use that hash
> to connect with an account associated with a person. The hash is not
> unique, it is assigned upon signing in, and lost after signing out.
> When accessing the resource, say a VideoResource in block A,
>
> @POST
> Response doSomething(@PathParam("hash") String hash)
> {
> Account account = .... // Use the hash here.
>
> this.facade_.doSomething(account, ....);
>
> return someResponse;
> }
>
> The account information is obtained from another block (B), which is
> accessed by various others block for the same purpose. These blocks
> represent various services for which a person may have an account.
>
> Thus, the line with
>
> Account account = .... // Use the hash here.
>
> would access another block.
>
> Can this easily be facilitated with cocoon3 at this stage?
>
> thanks for your time,
>
The question is do you need to call/use a java class or do you want to
call a pipeline?
To call another java class a simple import should do, when you have the
dep to the other block set.
In case of calling another pipeline should be working with
http://cocoon.apache.org/subprojects/servlet-service/servlet-service-impl/architecture.html
servlet:
final URL url = new URL("servlet:blockB:/someUrl");
HTH
salu2
>
> ------------------------------------------------------------------------------------------------------------------------------
> Andre H. Juffer
> Biocenter Oulu and Department of Biochemistry
> University of Oulu, Finland
> Phone: +358-294-481161
> Email: andre.juffer@oulu.fi
> WWW:
> www.biochem.oulu.fi/Biocomputing/
> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
> www.oulu.fi/biocenter/groups/juffer
>
> StrucBioCat, www.strucbiocat.oulu.fi
> Triacle Biocomputing, www.triacle-bc.com
>
> ------------------------------------------------------------------------
> *From:* Andre Juffer [andre.juffer@oulu.fi]
> *Sent:* Wednesday, August 14, 2013 4:20 PM
> *To:* users@cocoon.apache.org
> *Subject:* [C3] Calling another from REST resource
>
> Is it actually possible to call an another block (say block A) from
> within a REST resource that resides in block B?
>
> Thanks,
>
>
> ------------------------------------------------------------------------------------------------------------------------------
> Andre H. Juffer
> Biocenter Oulu and Department of Biochemistry
> University of Oulu, Finland
> Phone: +358-294-481161
> Email: andre.juffer@oulu.fi
> WWW:
> www.biochem.oulu.fi/Biocomputing/
> www.oulu.fi/biocenter/biocomputing-and-bioinformatics
> www.oulu.fi/biocenter/groups/juffer
>
> StrucBioCat, www.strucbiocat.oulu.fi
> Triacle Biocomputing, www.triacle-bc.com
>
--
Thorsten Scherler <scherler.at.gmail.com>
codeBusters S.L. - web based systems
<consulting, training and solutions>
http://www.codebusters.es/
RE: [C3] Calling another from REST resource
Posted by Andre Juffer <an...@oulu.fi>.
To clarify my question:
I need to identify persons when they access a resource. On the client side, a temporal hash is stored. On the server side, I use that hash to connect with an account associated with a person. The hash is not unique, it is assigned upon signing in, and lost after signing out. When accessing the resource, say a VideoResource in block A,
@POST
Response doSomething(@PathParam("hash") String hash)
{
Account account = .... // Use the hash here.
this.facade_.doSomething(account, ....);
return someResponse;
}
The account information is obtained from another block (B), which is accessed by various others block for the same purpose. These blocks represent various services for which a person may have an account.
Thus, the line with
Account account = .... // Use the hash here.
would access another block.
Can this easily be facilitated with cocoon3 at this stage?
thanks for your time,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi
WWW:
www.biochem.oulu.fi/Biocomputing/
www.oulu.fi/biocenter/biocomputing-and-bioinformatics
www.oulu.fi/biocenter/groups/juffer
StrucBioCat, www.strucbiocat.oulu.fi
Triacle Biocomputing, www.triacle-bc.com
________________________________
From: Andre Juffer [andre.juffer@oulu.fi]
Sent: Wednesday, August 14, 2013 4:20 PM
To: users@cocoon.apache.org
Subject: [C3] Calling another from REST resource
Is it actually possible to call an another block (say block A) from within a REST resource that resides in block B?
Thanks,
------------------------------------------------------------------------------------------------------------------------------
Andre H. Juffer
Biocenter Oulu and Department of Biochemistry
University of Oulu, Finland
Phone: +358-294-481161
Email: andre.juffer@oulu.fi
WWW:
www.biochem.oulu.fi/Biocomputing/
www.oulu.fi/biocenter/biocomputing-and-bioinformatics
www.oulu.fi/biocenter/groups/juffer
StrucBioCat, www.strucbiocat.oulu.fi
Triacle Biocomputing, www.triacle-bc.com