【发布时间】:2016-09-29 22:27:59
【问题描述】:
我目前正在使用 Liferay 7 并尝试为门户构建我的第一个服务。
为此,我创建了一个新的服务构建器模型,添加了我的第一个简单方法,添加了必要的注释并尝试现在部署 web 服务。但是 json 服务似乎没有正确注册。我在“http://localhost:8080/api/jsonws”下看不到任何条目。
我的代码如下(只有服务接口和实现):
服务接口:
@AccessControlled
@JSONWebService()
@OSGiBeanProperties(property = {"json.web.service.context.name=dynamicdataasset","json.web.service.context.path=DynamicDataAsset"}, service = DynamicDataAssetService.class)
@ProviderType
@Transactional(isolation = Isolation.PORTAL, rollbackFor = {PortalException.class, SystemException.class})
public interface DynamicDataAssetService extends BaseService {
/**
* Returns the OSGi service identifier.
*
* @return the OSGi service identifier
*/
public java.lang.String getOSGiServiceIdentifier();
}
ServiceImpl:
@ProviderType
@JSONWebService("dynamic-data-assets")
public class DynamicDataAssetServiceImpl extends DynamicDataAssetServiceBaseImpl {
/**
* Test method to see if the service is available.
* @return
*/
@JSONWebService(value = "get-availability-of-service", method = "GET")
public String getAvailabilityOfService() {
return "Service is available";
}
}
service.xml
<?xml version="1.0"?>
<!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 7.0.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_7_0_0.dtd">
<service-builder package-path="eu.gerhards.liferay.dynamic.data.list.assets">
<namespace>DynamicDataAsset</namespace>
<entity local-service="true" name="DynamicDataAsset" remote-service="true" uuid="false" human-name="DynamicDataAsset">
...
我遵循了可以在这里找到的教程:https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/service-builder-web-services。
谁能告诉我,出了什么问题并指出正确的方向?
非常感谢
乌多
【问题讨论】: