私は独自の Bean を追加する Mura CMS のプラグインに取り組んでいますが、存在しないというエラーが発生し始めました。私の Bean の 1 つには、電子メール、名前、金額などのセッターとゲッター、およびいくつかの Bean (つまり、configBean、priceBean、teamBean) があります。
Bean (donationBean と呼ばれる) をロードしようとすると、ID 電子メールの Bean が存在しないというエラーが表示されます。電子メールは Bean に基づくものではありません。メールのゲッター/セッター以外にコードを追加していないため、他のプロパティからエラーは発生しません。寄付 Bean の getter/setter セクションは次のとおりです。
public numeric function getAmount(){ return Variables.data['amount']; }
public void function setAmount(numeric amount){ Variables.data['amount'] = Arguments.amount; }
public any function getConfigBean(){ return Variables.configBean; }
public void function setConfigBean(any configBean){ Variables.configBean = Arguments.configBean; }
public string function getEmail(){ return Variables.data['email']; }
public void function setEmail(string email){ Variables.data['email'] = Arguments.email; }
public string function getId(){ return Variables.data['id']; }
public void function setId(string id){ Variables.data['id'] = Arguments.id; }
public string function getName(){ return Variables.data['name']; }
public void function setName(string name){ Variables.data['name'] = Arguments.name; }
public boolean function getPaid(){ return Variables.data['paid']; }
public void function setPaid(boolean paid){ Variables.data['paid'] = Arguments.paid; }
public any function getPriceBean(){ return Variables.priceBean; }
public void function setPriceBean(any priceBean){ Variables.priceBean = Arguments.priceBean; }
public numeric function getTeamId(){ return Variables.data['teamid']; }
public void function setTeamId(numeric teamid){ Variables.data['teamid'] = Arguments.teamid; }
そして、ここに私のconfig.xmlがあります
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans default-autowire="byName">
<bean id="registrationBean" class="[plugin]lib.registration" />
<bean id="priceBean" class="[plugin]lib.price" />
<bean id="donationBean" class="[plugin]lib.donation" />
</beans>
最後に、Bean をロードするコード (Bean 自体から):
public any function createForTeamPayment(priceid, teamid, name, email){
var price = getPriceBean().loadBy({priceid=Arguments.priceid});
setAmount(price.getAmount());
setTeamId(Arguments.teamid);
setName(Arguments.name);
setEmail(Arguments.email);
save();
}