Вам не нужно создавать другой проект для автора, в том же сервис-строителе, что и объект книги, добавляющий объект-автор и добавляющий ссылку на другую таблицу, в которой будет храниться первичный ключ книги и автора. service.xml
может быть:
<service-builder package-path="com.myproject.db">
<author>SO</author>
<namespace>myp</namespace>
<entity name="Book" local-service="true" remote-service="true" cache-enabled="false">
<column name="bookId" type="long" primary="true" />
<column name="name" type="String" />
<column name="description" type="String" />
<column name="price" type="long" />
<column name="author" type="Collection" entity="Author" mapping-table="Author_Books"/>
</entity>
<entity name="Author" local-service="true" remote-service="true" cache-enabled="false">
<column name="authorId" type="long" primary="true" />
<column name="authorName" type="String" />
<column name="books" type="Collection" entity="Book" mapping-table="Author_Books" />
</entity>
</service-builder>
И при развертывании этого портлета создаст еще одну таблицу myp_Author_Books
, которая будет иметь составной ключ из authorId
и bookId
. чем в методе визуализации книжной форме добавить
List<Author> authorList=AuthorLocalServiceUtil.getAuthor(0, AuthorLocalServiceUtil.getAuthorCount()); renderRequest.addAttribute("listAuthor",authorList)
и использовать этот атрибут в JSP с c:forEach
и aui:select
создать выпадающий список, чего-л, как:
<aui:select name="author" label="Author Name">
<c:forEach var="currAuthor" items="${listAuthor}">
<aui:option value="${currAuthor.authorId}" label=" ${student.authorName}"></aui:option>
</c:forEach>
</aui:select>
Спасибо за ваш ответ, я проголосуйте! Но у меня все еще есть один вопрос: что мне следует вставлять вместо ' ' для создания выпадающего списка? Я новичок, поэтому я не могу его получить –
German
Только что отредактировал мой ответ, чтобы дать ключ к jsp part, надеюсь, что это поможет! – KLajdPaja
Yeeeeeeeeah, это помогает !!! Спасибо, мужик! – German