gpt4 book ai didi

java - 无法在 Liferay portlet 应用程序中创建服务生成器

转载 作者:行者123 更新时间:2023-12-01 11:06:20 24 4
gpt4 key购买 nike

我无法在我的 portlet 应用程序中创建正确的 service.xml 来使用服务生成器。

1) 首先,如果我尝试使用 Eclipse IDE:- 右键单击​​项目- Liferay 服务构建器插件项目选择框为空,我无法单击“完成”。我收到“输入项目名称”通知。

2) 如果我尝试在 WEB-INF/或 WEB-INF/src 中手动创建包含以下内容的 service.xml 文件:

<?xml version="1.0"?>
<!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 6.2.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_6_0_0.dtd">

<service-builder package-path="com.aveo.openemm.servicebuilder">,
</service-builder>

该文件只是一个常规 xml 文件,并不充当服务构建器文件。在 Eclipse 中打开它不提供“概述”模式,该模式允许我按预期创建和管理我的实体。

该项目是使用 Maven 构建的(以防有所不同)。

现阶段我不知道如何继续前进。感谢您的帮助。

最佳答案

使用Liferay 6.2.1和Liferay maven插件6.2.10.9

如果您刚刚开始使用 Maven,那么我建议您使用 开始一个新项目

mvn archetype:generate -DarchetypeArtifactId=liferay-servicebuilder-archetype -DarchetypeGroupId=com.liferay.maven.archetypes -DarchetypeVersion=6.2.10.13 -DgroupId=com.example -DartifactId=Test -Dversion=1.00.000 -DpackageName=com.example -DinteractiveMode=false

用您的信息替换 com.example 和“Test”。

您的 service.xml 应位于 Test/Test-portlet/src/main/webapp/WEB-INF 文件夹中。它看起来像这样

<!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.example.dao">
<namespace>example</namespace>

<entity name="Reservation" uuid="true" local-service="true" remote-service="false">

<!-- PK fields -->

<column name="reservationId" type="long" primary="true" id-type="increment" />

<!-- Audit fields -->

<column name="userId" type="long" />
<column name="companyId" type="long" />
<column name="groupId" type="long" />

<!-- Other fields -->

<column name="fileEntryId" type="long" />
<column name="serialId" type="long" />
<column name="reserveDate" type="Date" />
<column name="checkoutDate" type="Date" />
<column name="checkinDate" type="Date" />
<column name="indefinite" type="String"/>


<!-- Order -->

<order by="asc">
<order-column name="reservationId" />
</order>

<!-- Finder methods -->

<finder name="ReservationId" return-type="Reservation">
<finder-column name="reservationId" />
</finder>

<finder name="UserId" return-type="Collection">
<finder-column name="userId" />
</finder>

<finder name="FileEntryId" return-type="Collection">
<finder-column name="fileEntryId" />
</finder>

<finder name="UserFile" return-type="Collection">
<finder-column name="userId" />
<finder-column name="fileEntryId" />
</finder>

<finder name="FileSerial" return-type="Collection">
<finder-column name="fileEntryId" />
<finder-column name="serialId" />
</finder>
</entity>

</service-builder>

您还需要编辑 Test/pom.xml 并添加以下内容

<properties>
<liferay.maven.plugin.version>6.2.10.13</liferay.maven.plugin.version>
<liferay.version>6.2.1</liferay.version>
</properties>

它应该位于结束项目标记之前。

然后使用您要运行的 Test/目录中的命令行

mvn liferay:build-service

您可以通过以下方式了解更多信息:http://www.liferay.com/documentation/liferay-portal/6.1/development/-/ai/service-builder-liferay-portal-6-1-dev-guide-en .

关于java - 无法在 Liferay portlet 应用程序中创建服务生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32908842/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com