1

ウィケット アプリケーションでログオン Web サービスを作成し、jQuery の $.ajax() 関数から呼び出す必要があります。私は wicketstuff-restannotations を見つけて、このコードを試しました:

public static class DestinationUrl implements Serializable
{
  private String authorizedUrl;

  public String getAuthorizedUrl()
  {
    return authorizedUrl;
  }

  public void setAuthorizedUrl(String authorizedUrl)
  {
    this.authorizedUrl = authorizedUrl;
  }

}

public static class GsonLogonService extends GsonRestResource implements Serializable
{
  private AuthenticatedWebSession session;

  public AuthenticatedWebSession getSession()
  {
    return session;
  }

  public void setSession(AuthenticatedWebSession session)
  {
    this.session = session;
  }

  @MethodMapping(value = "/loginService", httpMethod = HttpMethod.POST)
  public DestinationUrl logonService(@RequestBody String username, @RequestBody String password)
  {
    DestinationUrl result = new DestinationUrl();
    if (session.signIn(username, password))
      result.setAuthorizedUrl(RequestCycle.get().getRequest().getOriginalUrl().toString());
    else
      result.setAuthorizedUrl("/");
    return result;
  }

}

しかし、そのサービスを /logonService または /MyContext/logonService の下に表示するには、他に何をすればよいでしょうか? $.ajax() または $.get() でそれらのいずれかを呼び出すと、404 が発生します...

4

0 に答える 0