Liferay 6.1を使用しています
示されているように、mysqlでテーブルを作成しました
create table Book (
bookId bigint(10) not null primary key,
companyId bigint(10) null ,
userId bigint(10) null ,
userName VARCHAR(75)
);
これは私のservice.xmlファイルです
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 6.1.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_6_1_0.dtd">
<service-builder package-path="com.test">
<author>sai</author>
<namespace>Library</namespace>
<entity name="Book" local-service="true" remote-service="false">
<column name="bookId" type="long" primary="true" />
<column name="companyId" type="long" />
<column name="userId" type="long" />
<column name="userName" type="String" />
</entity>
</service-builder>
これは私の BookLocalServiceImpl クラスです
public class BookLocalServiceImpl extends BookLocalServiceBaseImpl {
public Book addBook(long userId, String userName) throws PortalException,
SystemException {
long bookId = CounterLocalServiceUtil.increment(Book.class.getName());
Book book = bookPersistence.create(bookId);
book.setCompanyId(1126);
book.setUserId(1126);
book.setUserName(title);
book = bookPersistence.update(book, false);
return book;
}
}
processAction クラス内に、この方法を追加しました
BookLocalServiceUtil.addBook(userId, userName);
しかし問題は、Liferay フレームワークが library_book という名前で新しいテーブルを作成し、そのテーブルを更新したことです。
mysql> select * from library_book;
+--------+-----------+--------+----------+
| bookId | companyId | userId | userName |
+--------+-----------+--------+----------+
| 1 | 1126 | 1126 | saibaba |
+--------+-----------+--------+----------+
1 row in set (0.00 sec)
私のテーブルブックは空です
mysql> select * from Book;
Empty set (0.00 sec)
テーブル Book gets Updated を作成する方法を教えてください。