我正在使用 Hybris 6.2,我需要自定义从我的项目生成的一些资源。
如上述 wiki 指南中所示,我的资源位于 myextension\custom\src\de\hybris\platform\yacceleratorcore\customresource 中,到目前为止看起来像这样:
package de.hybris.platform.yacceleratorcore.customresource;
import de.hybris.platform.webservices.AbstractYResource;
import de.hybris.platform.yacceleratorcore.model.SparepartsModel;
import org.apache.log4j.Logger;
@SuppressWarnings("PMD")
public class CustomSparepartsResource extends AbstractYResource<SparepartsModel>
{
private static final Logger LOG = Logger.getLogger(CustomSparepartsResource.class);
public CustomSparepartsResource()
{
super("CustomSpareparts");
}
@Override
protected SparepartsModel readResource(final String resourceId) throws Exception
{
final SparepartsModel model = new SparepartsModel();
model.setCode(resourceId);
LOG.debug("Custom resource");
return (SparepartsModel) readResourceInternal(model);
}
}
我试图仅打印该日志消息作为开始,但没有使用此资源,而不是在每个 ant clean all 上生成的默认资源。
我在 web-spring.xml 中定义了这个资源 bean,如下所示:
<bean id="customSparepartsResource" class="de.hybris.platform.yacceleratorcore.customresource.CustomSparepartsResource" scope="prototype" parent="abstractResource"/>
但是当我启动服务器时,我收到以下错误消息:
[1;31mERROR [localhost-startStop-1] [ContextLoader] 上下文初始化失败 [m org.springframework.beans.factory.CannotLoadBeanClassException: 找不到名为 ' 的 bean 的类 [de.hybris.platform.yacceleratorcore.customresource.CustomSparepartsResource] customSparepartsResource' 在类路径资源 [customplatformwebservices-web-spring.xml] 中定义;嵌套异常是 java.lang.ClassNotFoundException: de.hybris.platform.yacceleratorcore.customresource.CustomSparepartsResource
我的实施缺少什么?如何使用自己的自定义资源成功替换生成的资源?