我有无状态会话bean的功能:
public ProductAttributeUnit createProductAttributeUnit(ProductAttributeUnit productAttributeUnit)
{
em.persist(productAttributeUnit);
return productAttributeUnit;
}
我要从xml文件中导入另一个类
@Inject private ProductAttributeService productAttributeService;
ProductAttributeUnit productAttributeUnit;
private ProductAttributeUnitTranslation productAttributeUnitTranslation;
private String tagContent;
private String node;
public void importUnits (InputStream xmlFile) throws XMLStreamException{
XMLInputFactory factory = XMLInputFactory.newInstance();
XMLStreamReader reader = factory.createXMLStreamReader(xmlFile);
while(reader.hasNext()){
int event = reader.next();
switch(event){
case XMLStreamConstants.START_ELEMENT:
if ("Units".equals(reader.getLocalName())){
node = "Unit";}
if ("Unit".equals(reader.getLocalName())){
productAttributeUnit = new ProductAttributeUnit();
}
break;
case XMLStreamConstants.CHARACTERS:
tagContent = reader.getText().trim();
break;
case XMLStreamConstants.END_ELEMENT:
switch(reader.getLocalName()){
case "Code":
productAttributeUnit.setCode(tagContent);
break;
case "Unit":
productAttributeService.createProductAttributeUnit(productAttributeUnit);
}
}
}}
我收到了java.lang.NullPointerException。如果我将productAttributeUnit传递给List而不是从此List中保留元素,则everythnig工作正常。
为什么我不能直接使用JPA来保留它?