FW: I'm resending this email from 01/04 due to an email gateway error
--

Hi Paul,

You have reached a limitation of the CLAP pseudo-protocol which isn't
suitable to list the content of a directory and therefore do any sort of
content negotiation.

We could automatically append the indexName to a directory URI to try to
prevent the 404 or need to hardcode the URI as you have to do though.

Would you mind entering an issue in GitHub?

Thanks,
Jerome
--
http://restlet.com
http://twitter.com/#!/jlouvel


2013/1/4 Paul Morris <pmor...@nmh.org>

> Hi there-
>
> Here's what I'm trying to do:
>
> Redirect GET calls to root to a static directory with an index.html file
> in it. I thought I could redirect to the folder containing the index.html
> and then use the setIndexName of Directory to serve up the index.html file
> once the user gets redirected to the parent folder but it's not working
> that way. Here's what I have right now:
>
>     <bean id="componentChildContext" class="org.restlet.Context">
>         <lookup-method name="createChildContext" bean="component.context"
> />
>         <property name="clientDispatcher">
>             <bean class="org.restlet.Client">
>                 <constructor-arg name="protocolName" value="clap" />
>             </bean>
>         </property>
>     </bean>
>
>     <bean id="docsRedirector" class="org.restlet.routing.Redirector">
>         <constructor-arg name="context" ref="componentChildContext" />
>         <constructor-arg name="targetPattern" value="{rbi}docs/index.html"
> />
>         <constructor-arg name="mode">
>             <bean id="org.restlet.routing.Redirector.MODE_CLIENT_SEE_OTHER"
>
> class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"/>
>         </constructor-arg>
>     </bean>
>
>     <bean id="docsDir" class="org.restlet.resource.Directory">
>         <constructor-arg name="context" ref="componentChildContext" />
>         <constructor-arg name="rootUri" value="clap:///docs/" />
>         <property name="indexName" value="index" />
>     </bean>
>
>     <bean id="router" class="org.restlet.ext.spring.SpringRouter">
>         <!-- Remember there is a "/<root>" portion of the URI appended by
> the web container as context. -->
>         <property name="attachments">
>             <map>
>                 <entry key="/" value-ref="docsRedirector" />
>                 <entry key="/docs/" value-ref="docsDir" />
>             </map>
>         </property>
>     </bean>
>
> This actually works because I am redirecting to the actually index.html
> but it seems awfully brittle to be redirecting to {rbi}docs/index.html
> rather than just {rbi}docs/ which I could live with but the problem is my
> WADL description shows that you can call a GET on docs/ but when you try
> that you get a plain ol' non-hypermediafied listing of the files within
> docs. I tried messing with the setNegotiatingContent flag to no avail. Have
> I missed the purpose of setIndexName?
>
> Thanks.
>
> ------------------------------------------------------
>
> http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=3041079
>

------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=3041590

Reply via email to