私はウィッケットの連絡フォームを持っています。私はフォームオブジェクトを受け取ります。今私はこのオブジェクトをSpring Serviceに渡す必要があります。ウィケットとスプリングの統合
package com.mysticcoders.mysticpaste.web.pages;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.markup.html.form.TextField;
import org.apache.wicket.markup.html.panel.FeedbackPanel;
import com.mysticcoders.mysticpaste.model.Contact;
import org.apache.wicket.model.CompoundPropertyModel;
import com.mysticcoders.mysticpaste.services.IContact;
public class FormPage extends WebPage
{
private Contact contact;
private IContact icontact;
public FormPage()
{
// Add a FeedbackPanel for displaying our messages
FeedbackPanel feedbackPanel = new FeedbackPanel("feedback");
add(feedbackPanel);
Form<Object> form = new Form<Object>("contactForm",
new CompoundPropertyModel<Object>(contact))
{
private static final long serialVersionUID = 1L;
protected void onSubmit(Contact contact)
{
icontact.saveContact(contact);
}
};
form.add(new TextField<Object>("name"));
form.add(new TextField<Object>("email"));
form.add(new TextField<Object>("country"));
form.add(new TextField<Object>("age"));
add(form);
// add a simple text field that uses Input's 'text' property. Nothing
// can go wrong here
}
}
私は、アプリケーションコンテキストXMLで何かを行う必要があると確信しています。
My Application-context.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<bean id="WicketApplication" class="com.mysticcoders.mysticpaste.web.pages.WicketApplication" />
</beans>
私の質問は簡単です。私 をonSubmitメソッドは春 サービスを呼び出すことができます
- 私は何をすべき?
- 誰かが私に たら、フォームが送信されますように、それは、私の アプリケーションのcontext.xmlに変更の連絡先 春のサービスクラスに を必要とするものを知っているようでした。
このアプローチでは、WebApplicationのこの特定の実装ではすべてのコンポーネントを結びつけませんか?したがって、この コンポーネントを別のアプリケーションで再利用することはできません。 –
@arun yup、それはもちろん、トレードオフの –
少しでも手頃な価格です:P –