プライベート メッセージ システムを実装しようとしています。これが悪い設計であるかどうか教えてください。しかし、私には と の 2 つのクラスがUser
ありRecipient
ます。Recipient
ですUser
ので継承しUser
ます。、、Recipient
などの追加のプロパティがあります。messageId
readDate
keepMessage
私のコードは次のとおりです。
//This line gives me ClassCastException
recipient = (Recipient) user;
.
//GET id of user to send message to
String receiverId = request.getParameter("id");
//GET title of message
String title = request.getParameter("title");
//Get content of message
String content = request.getParameter("content");
//Retrieve logged in user from session
HttpSession session = request.getSession();
User sender = (User) session.getAttribute("user");
//Instantiate a new User to hold receiver
User user = new User();
//Retrieve object of user to send message to
UserService userService = new UserService();
user = userService.getUserById(Integer.valueOf(receiverId));
//Instantiate a new Recipient (extends User)
Recipient recipient = new Recipient();
//Cast User as a Recipient
recipient = (Recipient) user;
//Instantiate a message
Message message = new Message();
//message related stuff here....
//Pass the message content and Recipient to messageService
MessageService messageService = new MessageService();
messageService.sendPrivateMessage(message, recipient);