package org.japanosample.action;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletRequest;
import org.japano.action.ActionConfig;
import org.japano.Session;
import org.japano.View;
import org.japanosample.SampleSession;
import org.japanosample.User;
import org.japano.metadata.annotation.*;
@JapanoAction ( library="/user", name="show", repeatable=true )
public class ShowUser implements org.japano.action.Action
{
private int userId=-1;
@JapanoParameter
public void setUserId(int id)
{
this.userId=id;
}
public void perform(HttpServletRequest request, HttpServletResponse response) throws IOException
{
SampleSession session=(SampleSession)request.getSession();
if (userId < 0)
{
User u=session.getUser();
if ( u == null)
{
session.setView("/login.jsp");
return;
}
session.setView("/editUser.jsp");
}
else
{
User u=User.fromId(userId);
if (u == null)
throw new RuntimeException("no user "+userId);
session.setView("/showUser.jsp");
session.getView().addAttribute("user", u);
}
}
}