我有一个“ECLocalDataService.java”类。我正在尝试将它构建为 liferay 本地服务,以便我可以使用 ServiceLocator.findService() 从所有 portlet 和速度模板访问它。
我的 ECLocalDataService 有点像这样:
public interface ECDataLocalService {
public java.lang.String getBeanIdentifier();
public void setBeanIdentifier(java.lang.String beanIdentifier);
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public float getPriceBySKU(java.lang.String sku);
}
它的实现类是这样的:
import com.rosettastone.service.base.ECDataLocalServiceBaseImpl;
public class ECDataLocalServiceImpl extends ECDataLocalServiceBaseImpl {
public float getPriceBySKU(String sku) {
float price = 125.99f;
return price;
}
}
我已经在我的 service.xml 中注册了我的 ECDataLocalService
<service-builder package-path="com.rosettastone">
<author>rajeshp</author>
<namespace>mycompany</namespace>
<entity name="ECDataLocalService" local-service="true" remote-service="false" human-name="ECDataLocalService"></entity>
</service-builder>
现在,当我单击 Liferay Dev Studio 中的“BuildServices”图标时,它会引发 NullPointer 异常。它甚至没有显示它为哪个对象找到了 NullPointer,没有错误消息或日志消息,只是简单地显示 NullPointerException 并且没有构建服务。