Hi Jerome,
http://www.restlet.org/downloads/ delivers the wrong snapshot. When
someone tries to download
http://www.restlet.org/downloads/snapshot.zip a
restlet-1.2-snapshot is delivered. According to the changes.txt the
snapshot was created at 2009-05-16.
Best regards,
Lars
--
Semagia
Hi Jérôme co.,
Do you have an idea when the remaining bugs [1] are resolved? In a
project I tried to support Restlet 1.x and 2.x but recently I switched
over to Restlet 2.0M3 due to API incompatibilities.
Now I've got the request if it wouldn't be better to switch back to
Restlet 1.x. :)
I
Hi all,
I ran against a problem with the 1.2 Filter. The filter does not let
me specify that 'next' is a ServerResource.
I propose to change Filter as follows:
- Add method setNext(Class? extends UniformResource targetClass)
or setNext(Class? targetClass)
- Remove setNext(Class? extends
[...]
Just out of curiosity: Has someone tried Google AppEngine [1] together
with Restlet (Servlet connector)?
I ran a few toy applications against the Google AppEngine SDK and
discovered no problems so far.
Best regards,
Lars
--
http://www.semagia.com
Hi Jérôme,
When using third-party libraries with GAE SDK, you have to be
careful because those libraries are not verified against the
available Java classes (white list). Therefore, it will work locally
but break at deployment time!
Are you sure? I understood the purpose of the SDK that it
Hi all,
[...]
Some comments against that release:
[...]
I like to add another point: Rename ServerResource#isExists to
isExisting(). isExists hurts me. ;) It would make sense to rename
setExists(boolean) as well.
Best regards,
Lars
--
http://www.semagia.com
Hi Rémi,
Will annotations in restlet the advertised way of creating restlet
application ?
I moved to Restlet 1.2 M2/snapshot without using annotations. I found
no reason why these annotations will help me. Everything works fine
without annotations and I think/hope Restlet won't force us to use
Hi all,
Just out of curiosity: Has someone tried Google AppEngine [1] together
with Restlet (Servlet connector)?
[1]
http://code.google.com/intl/de/appengine/docs/java/gettingstarted/
Best regards,
Lars
--
http://www.semagia.com
--
Hi all,
First of all, I love the RepresentationInfo. :) Thanks for adding
this. :)
Some comments against that release:
- I wonder how to create a RepresentationInfo since it is abstract;
for the time being I created my own RepresentationInfo class derived
from the abstract class.
- Wouldn't
Hi Jérôme,
[...]
Download links:
http://www.restlet.org/downloads/1.1/restlet-1.1.1.exe
http://www.restlet.org/downloads/1.1/restlet-1.1.1.zip
I wonder if it has been discussed before, but imo it would be nice if
the Restlet libs would have the version number encoded in the name,
like several
Hi Jerome,
[...]
I think there is room for optimization but this would lead to some
significant refactoring. Let's have a look at this for Restlet 2.0:
Optimize conditional handling
http://restlet.tigris.org/issues/show_bug.cgi?id=633
Thanks, for the time being I'll handle that use case
Hi again,
I tried to find out why Variant#setModificationDate(Date) and several
other methods
are deprecated. I wasn't able to find a rationale for it.
Maybe someone can explain it?
I found the revision dtd. 2007-07-21 10:27:14-0700:
Hi Jérôme,
[...]
The change was made because the Variant class is only needed for the purpose
of
content negotiation. Also, the expirationDate, modificationDate, tag
and size
properties can be costly to retrieve (some I/O needed) so it seemed better to
not imply that they should be
Hi all,
I tried to find out why Variant#setModificationDate(Date) and several
other methods
are deprecated. I wasn't able to find a rationale for it.
Maybe someone can explain it?
Variants are very cheap while Representations are more expensive. I
think it is a
Good Thing if a client can be
Hi Jerome,
This is excellent and will remind to some long Restlet users an experience
that was made on fluent builders early in API design. Lars are you around?
:)
Nice project keke! :)
Best regards,
Lars
--
http://www.semagia.com
Hi all,
Got this today via Freshmeat:
RESTClient is a Java platform client application to test RESTful
webservices. http://code.google.com/p/rest-client/
Best regards,
Lars
--
http://www.semagia.com
Hi all,
Today, this project was announced at Freshmeat
https://restfulbeans.dev.java.net/
Freshmeat description:
RestfulBeans is a high level API for sharing objects between a
server and a Java-based client. The underlying protocol is designed
to expose the data consumed by a rich client
Hi Jerome,
We indeed have this dependency on AsyncWeb, but they seems to be working on
updating it for MINA 1.0:
BTW: Today MINA 0.8.4 was released. This is a bug-fix release and the
should be the last 0.8-branch release.
Maybe you like to update MINA with the last version (I haven't tested
it
[...]
the method first checks for an ResponseStream and if the stream is
null it checks for an ResponseChannel (line 224).
[...]
Shouldn't that be done the other way around? The channel should be
preferred.
While thinking about it, I wonder if we need the Input/Outputstream at
all.
Why do we
[...]
While thinking about it, I wonder if we need the Input/Outputstream at
all.
Why do we not work with Channels / ByteBuffers only?
Naaahh... forget it, keep both! :)
Best regards,
Lars
--
http://www.semagia.com
Hi Piyush,
Any plans to upgrade to the latest mina release (1.0 released in
October)?
Since AsyncWeb still uses Mina 0.8 and Mina 1.0 contains compatibility
breaks, we have to wait for AsyncWeb (or write our own HTTP server).
Best regards,
Lars
--
http://www.semagia.com
Hi Jerome,
You've requested a feedback for the new Application feature.
Unfortunally I am unable to give feedback before next Monday. Sorry. I
am busy with aligning one of my projects to b19 but I didn't enter
the 'higher' Application level, yet. :/
Best regards,
Lars
--
http://www.semagia.com
Hi Jerome,
I've readded the default constructor to Resource (in SVN). I need a way to
[...]
Merci :)
The need for wrapper when further to many other classes as it's the
mechanism used to separate the API classes from the implementation classes.
So, we need the wrapper classes for the
Hi Jerome,
[...]
Testing over the week-end is very welcome as I'll try to finish/release on
Monday if possible.
Last night I converted two projects to the new Request/Response style
and everything works as expected.
Best regards,
Lars
--
http://www.semagia.com
Hi all,
How can I set the HTTP header Allow? If I use the new
call.getAttributes(...) method Restlet tells me, that I cannot set the
Allow header.
Best regards,
Lars
--
http://www.semagia.com
Hi Jerome,
Only non-standard headers can be added via the special attribute. The
Allow header is supported at the API level by the
Call.getClient().getAccepted*() methods.
Thanks, that was one of the places where I looked, but I cannot find a
way how to set, i.e.
Allow: GET, PUT, OPTIONS
Hi Jerome,
[...]
Here is the battle plan:
- add a method to Call: getAllowedMethods() : ListMethod
- add a method to Resource:
* allowGet() : boolean (false by default)
* allowPost() : boolean (false by default)
* allowPut() : boolean (false by default)
Hi Jerome,
In the current state, the description (from Metadata super class) and the
uri property could be customized for the same method.
Okay, I overlooked that. :/
Therefore, unless we
remove those properties or forbid their setting, it won't be possible to
compare simple object
Hi Jerome,
These properties are in fact in the super Metadata class, and used for
example with Status instances to display error pages with meaningful
descriptions and hyperlinks.
Yes, I know and for Status it makes sense.
I think Method should not be derived from Metadata because it doen't
[...]
If we need to attract some servlet developers later-on maybe it is
wise to have a method like getParameter() this will help in
transition from servlets to restlets.
... and you can use a WrapperCall if you want additional methods. You
can implement shortcuts etc. in your WrapperCall
Hi Jerome,
Sorry for my late reply. :)
I think you will be happy to know that I've found a simpler solution. Now,
the HTTP server|client connectors systematically pass the list of
request|response headers as an attribute in the call's attributes map.
Looks promising. The only thing I like to
Hi Jerome,
Actually, I'm thinking about restlet.http.requestHeaders. This is a bit
longer but clearly applies to calls based on the HTTP protocol. Any
objection?
Nope, good idea. :)
Best regards,
Lars
--
http://www.semagia.com
Hi Piyush,
[...]
Could we somehow do the same with parameters of the query string?
/a/b/c?key1=value1key2=value2
org.restlet.reference.params.key1
org.restlet.reference.params.key2
Why do you think this adds a value?
Best regards,
Lars
--
http://www.semagia.com
Hi Jerome,
I was really worried about this issue that you raised, so I'm glad that you
like the solution! I hope that you don't mind about the org.restlet prefix
change.
Go ahead! :)
Best regards,
Lars
--
http://www.semagia.com
Hi Jerome Co.,
Here an excerpt of a class I use nearly for all projects where Restlet
is involved:
public class Headers {
/**
* Constructor that wraps a [EMAIL PROTECTED]
org.restlet.data.ParameterList}.
*
* @param paramList The parameter list instance to wrap.
*/
Hi again,
one follow-up:
((HttpServerRestletCall) call).getConnectorCall().getRequestHeaders()
only works with unwrapped calls. That's why I suggested to make
WrapperCall#getWrappedCall()
public.
If it is public I could do something like this:
if (call instanceof WrapperCall) {
Hi Jerome,
[...]
the value of some of them (probably in the case of non-standard HTTP
headers?) in your Restlets, then you need to *push* them to the uniform Call
instance. This is what the sample converter code demonstrates.
Yes. But I cannot give my restlet to another developer and it just
Hi Mikkel,
It seems that the ConnectorCall class has been removed from the API in the
latest release (1.0-beta18)
Jérôme wants to provide call converters that make it possible to
convert a org.restlet.Call into the particular Call implementation but
this isn't done yet.
What is then the new
Hi Mikkel,
This seems to work fine for server calls, but how about client calls?
Good question. :) No idea.
I looked into
com.noelios.restlet.ext.net.HttpClient.handle(Call call)
but it seems that the HttpClient ignores custom HTTP Header values.
It only sets i.e. user agent, encoding
[...]
Jérôme wants to provide call converters that make it possible to
convert a org.restlet.Call into the particular Call implementation but
this isn't done yet.
C.f. http://restlet.tigris.org/issues/show_bug.cgi?id=145
Best regards,
Lars
--
http://www.semagia.com
Hi Sean,
I have an application that contains a filter that converts incoming XML into a
DomRepresenation so that it can be manipulated later as a document. Then, on
the
return, a document comes to the afterHandler() and I want to transform that
into
XML to return to the client. How do I
Hi Jerome,
[...]
- Make all classes, except those intended to be subclasses, as final. Which
ones?
- Make classes whose instances don't need to be modified as immutable
(members are final).
Be careful.
Cf. Michael Feathers: It's time to deprecate final
Hi Piyush,
I agree with the very first comment to the message posted on
theserverside.com. But I also agree Chris's comment
Yes, I think it would be a good idea to wait until we know what people
do with Restlet. Maybe the final classes should be postponed till v1.1
or something like that. The
Hi Jerome,
[...]
1) Add a concept of Restlet Application and refactor the RestletServer and
RestletContainer classes accordingly. A RestletApplication should be similar
[...]
It would be great if the Restlet(Container|Application) could be a
base for a OSGi RestletService. OSGi has already
Hi all,
Is someone using the DirectoryHandler of beta15?
I've encountered strange problems:
1. It seems that the DirectoryHandler slows the app down more than the
'old' DirectoryRestlet
2. Sometimes I get an exception from the ContextClient that the
protocol is not supported. But this does
Hi John,
[...]
Is there a reason this limitation was added? Wouldn't it be better to
change getValues() to e.g., getValuesString() and add a ParameterList
getValues (name) method?
If you only need read-only access to the provided parameters I can
offer an alternative that also capable to
Hi all,
Me, myself and I ;) think that it would be nice to add two methods to
the ConnectorCall
setRequestHeader(String name, String value);
setResponseHeader(String name, String value);
Sideeffect: If an existing name/value pair exists it is overridden by
the specified name/value pair.
Hi Jerome,
[...]
One issue I'm having is that the Restlet interface is implemented by many
classes (connectors, components, etc.). The changes suggested trigger a
cascade of other changes in order to prevent warnings like:
Type safety: The method handle(Call) belongs to the raw type Restlet.
Hi Jerome,
[...]
4) Use a base *Restlet class in your application that will do the cast once
That's the way I've solved it with the current Restlet release.
[...]
What do you think?
I think I'll sleep a night over that issue or even better try
something out. I'll come back later on this
49 matches
Mail list logo