Hi Anisha,

Could you put together an example app on github demonstrating the issue?

But also, you could perhaps use the "passThru" setting, as used by the
swagger service:

<filter>
    <filter-name>IsisSessionFilterForRestfulObjects</filter-name>
    <filter-class>org.apache.isis.core.webapp.IsisSessionFilter</filter-class>
    <!-- authentication required for REST -->
    <init-param>
        <param-name>authenticationSessionStrategy</param-name>
        
<param-value>org.apache.isis.viewer.restfulobjects.server.authentication.AuthenticationSessionStrategyBasicAuth</param-value>
    </init-param>
    <init-param>
        <!-- what to do if no session was found... -->
        <param-name>whenNoSession</param-name>
        <!-- ... 401 and a basic authentication challenge if request
originates from web browser -->
        <param-value>auto</param-value>
    </init-param>
    <init-param>
        <param-name>passThru</param-name>
        <param-value>/restful/swagger</param-value>
    </init-param>
</filter>


This provides an alternative way to hit a JAXRS resource without a session.

HTH
Dan


On Thu, 27 Apr 2017 at 11:14 Anisha Jaiswal <[email protected]>
wrote:

> Hi,
>
> Thanks for the reply.
>
> I am getting the HTTP status code 404 - resource not found.
>
> I found out that if i deploy my application with the ROOT context path the
> web service works, but if i deploy it with some other context path then it
> does not. The swagger UI still tries to access the rest web service with
> the ROOT context path. Is there a way to configure the context path of an
> isis application.
>
> Providing the context as follows in tomcat\conf\Catalina\localhost also
> does not help:
>
> <Context
>        docBase="../my-app-folder/myAppwar"
>        antiResourceLocking="false" privileged="true" path="/myApp" />
>
> Thanks for your time !
>
> Regards,
> Anisha
>
>
> 2017-04-26 13:40 GMT+05:30 Rade, Joerg / Kuehne + Nagel / Ham GI-DP <
> [email protected]>:
>
> > Hi Anisha,
> >
> > what kind of response do you get?
> >
> > Could be related to [1].
> >
> > -j
> > [1] https://issues.apache.org/jira/browse/ISIS-1572
> > -----Ursprüngliche Nachricht-----
> > Von: Anisha Jaiswal [mailto:[email protected]]
> > Gesendet: Dienstag, 25. April 2017 14:38
> > An: [email protected]
> > Betreff: REST Web service using Apache ISIS
> >
> > Hi,
> >
> > I am trying to implement a REST web service using Apache ISIS, but unable
> > to do so.
> > This is what my implementation looks like:
> >
> > @DomainService(
> >         nature = NatureOfService.VIEW_REST_ONLY
> > )
> > @Path("/authorization")
> > public class Authorization implements AuthorizationApiInterface{
> >
> > @Override
> > @Path("/isAuthorized")
> > @POST
> > @Action
> > public Boolean isAuthorized(JSONObject jObj) {
> >
> > // some steps
> > return true;
> > }
> >
> > }
> >
> > Also i have overridden the AuthenticationSessionStrategyBasicAuth  so as
> > to be able to call this method when there is no valid session object:-
> > public class CustomAuthenticationSessionStrategy extends
> > AuthenticationSessionStrategyBasicAuth {
> >
> > @Override
> > public AuthenticationSession lookupValid(final HttpServletRequest
> > httpServletRequest, final HttpServletResponse httpServletResponse) {
> String
> > requestURI = httpServletRequest.getRequestURI();
> > if("/admin/restful/authorization/isAuthorized".
> > equalsIgnoreCase(requestURI)){
> > AuthenticationSessionStrategyTrusted strategy = new
> > AuthenticationSessionStrategyTrusted();
> > AuthenticationSession session = strategy.lookupValid(httpServletRequest,
> > httpServletResponse);
> > return session;
> > } else {
> > return super.lookupValid(httpServletRequest, httpServletResponse); } } }
> >
> > The new CustomAuthenticationSessionStrategy has replaced
> > AuthenticationSessionStrategyBasicAuth  in web.xml
> >
> > Also extended RestfulObjectsApplication:- public class
> > CustomRestfulObjectsApplication extends RestfulObjectsApplication {
> >
> > public CustomRestfulObjectsApplication() {
> >         addClass(Authorization.class);
> >     }
> > }
> > And replced it in web.xml.
> >
> > I am calling this api using the HttpURLConnection class. The url passed
> is
> > http://localhost:8080/admin/restful/authorization/isAuthorized.
> >
> > Please let  me know where I am going wrong.
> >
> > Thanks,
> > Anisha
> >
> > Kühne + Nagel (AG & Co.) KG
> > Rechtsform: Kommanditgesellschaft, Bremen HRA 21928, USt-IdNr.: DE
> > 812773878.
> > Geschäftsleitung Kühne + Nagel (AG & Co.) KG: Dr. Hansjörg Rodi (Vors. ),
> > Martin Brinkmann, Matthias Heimbach, Jan-Hendrik Köstergarten, Nicholas
> > Minde, Michael Nebel, Lars Wedel, Matthias Weiner.
> > Persönlich haftende Gesellschafterin: Kühne & Nagel A.G., Rechtsform:
> > Aktiengesellschaft nach luxemburgischem Recht, HR-Nr.: B 18745,
> > Geschäftsführendes Verwaltungsratsmitglied: Karl Gernandt.
> > Geschäftsleitung Region Zentral- und Osteuropa: Dr. Hansjörg Rodi
> (Vors.),
> > Thierry Held, Uwe Hött, Richard Huhn, Holger Ketz, Jan-Hendrik
> > Köstergarten, Jan Kunze, Michael Nebel, Guillaume Sauzedde, Mustafa
> Sener.
> >
> > Wir arbeiten ausschließlich auf Grundlage der Allgemeinen Deutschen
> > Spediteurbedingungen 2017 (ADSp 2017). Hinweis: Die ADSp 2017 weichen in
> > Ziffer 23 hinsichtlich des Haftungshöchstbetrages für Güterschäden (§ 431
> > HGB) vom Gesetz ab, indem sie die Haftung bei multimodalen Transporten
> > unter Einschluss einer Seebeförderung und bei unbekanntem Schadenort auf
> 2
> > SZR/kg und im Übrigen die Regelhaftung von 8,33 SZR/kg zusätzlich auf
> 1,25
> > Millionen Euro je Schadenfall sowie 2,5 Millionen Euro je
> Schadenereignis,
> > mindestens aber 2 SZR/kg, beschränken. Die ADSp sind auf unserer Webseite
> > als Download erhältlich. Auf Anfrage senden wir Ihnen diese auch gerne
> zu.
> >
>

Reply via email to