小编adg*_*gfs的帖子

在MVP GWT应用程序中测试演示者

我有一个简单的应用程序,并希望使其可测试.我是这个领域的新人.这是一个简单的Presenter,请记住这段代码,你能建议或给我一些如何测试它的例子.

    public class SomePresenter extends Presenter<MainPanelPresenter.Display>
    {

    public interface Display extends WidgetDisplay
    {
      HasClickHandlers getAddButton();

      HasClickHandlers getDeleteButton();

      void setData(ArrayList<Person> data);

      ArrayList<String> getSelectedRows();

      Widget asWidget();

    }

    private final DispatchAsync dispatcher;
    public static final Place PLACE = new Place("main");

    @Inject
    public SomePresenter(DispatchAsync dispatcher, EventBus eventBus, Display display)
    {
      super(display, eventBus);
      this.dispatcher = dispatcher;
      bind();
    }

    protected void onBind()
    {
      display.getAddButton().addClickHandler(new ClickHandler()
      {
        public void onClick(ClickEvent event)
        {
          eventBus.fireEvent(new AddButtonEvent());
        }
      });

      display.getDeleteButton().addClickHandler(new ClickHandler()
      {
        public void onClick(ClickEvent event)
        {
          ArrayList<String> list = …
Run Code Online (Sandbox Code Playgroud)

java mvp gwt unit-testing

9
推荐指数
1
解决办法
2015
查看次数

JSF中的DataTable

我在jsf中有一个dataTable,我如何从该表中获取所有值.

这是我的表:

<h:dataTable id="dt1" value="#{Metadata.placeholders}" var="item" binding="#{Metadata.dataTable}" bgcolor="#F1F1F1" border="10" cellpadding="5" cellspacing="3" first="0" rows="4" width="40%" frame="hsides" rules="all" summary="This is a JSF code to create dataTable." >

                    <f:facet name="header">
                        <h:outputText value="Select elements for available placeholder" />
                    </f:facet> 

                    <h:column>
                        <f:facet name="header">
                            <h:outputText value="Placeholder" />
                        </f:facet> 
                        <h:outputText value="#{item.id}"/>
                    </h:column>

                    <h:column>
                        <f:facet name="header">
                            <h:outputText value="Element"/>
                        </f:facet> 
                        <h:selectOneListbox id="elements" size="1" >
                            <f:selectItems value="#{item.elements}" /> 
                        </h:selectOneListbox>
                    </h:column>

                    <h:column>
                        <f:facet name="header">
                            <h:outputText value="Value"/>
                        </f:facet> 
                        <h:inputText></h:inputText> 
                    </h:column>

                </h:dataTable><br>
Run Code Online (Sandbox Code Playgroud)

如您所见,第二列和第三列是列表框和输入文本字符,因此假设该表有5行,用户从列表框中选择一个值并在文本字段中输入文本,那么我怎么能得到它用户按"提交"按钮后的数据?

java datatable jsf

6
推荐指数
1
解决办法
4568
查看次数

长期运行的构造函数是否会创建半初始化对象?

我有一个类"A",它读取XML文件并进行一些处理.我在构造函数中添加了一个方法"load",但我想知道如果XML文件大小很大并且需要时间加载会发生什么.

class A
{
    public String fileName;

    A(String fileName)
    {
        this.fileName = fileName;
        load();
    }

    private load()
    {
        //here i load some xml file by given file name;
    }

    public searchByTag(String sometag)
    {
        //some search
    }

    public extractData()
    {
        //extract some data
    }
}  
Run Code Online (Sandbox Code Playgroud)

例如,如果我们有以下情况:

A a = new A("somefile");
a.searchByTag("tag");
a.extractData();
Run Code Online (Sandbox Code Playgroud)

对象"a"是在加载文件后创建的,对吧?

java constructor initialization

2
推荐指数
1
解决办法
561
查看次数

使用GIN在GWT中注入入口点类

我试过这样的事情:

@Singleton
public class AAA implements EntryPoint, HistoryListener
{

private BBB bbb;
private CCC ccc;
private DDD ddd;
private EEE eee;

@Inject
public AAA(BBB bbb, CCC ccc, DDD ddd, EEE eee)
{
  this.bbb = bbb;
  this.ccc = ccc;
  this.ddd = ddd;
  this.eee = ee;
}
.........
}
Run Code Online (Sandbox Code Playgroud)

结果对所有实例都为null ..我希望这种方式工作......

我知道我可以做这样的事情

private final MyGinjector injector = GWT.create(MyGinjector.class);

injector.getAAA()
and so on..
Run Code Online (Sandbox Code Playgroud)

为什么我尝试的第一种方式对我不起作用?有什么建议?

谢谢

java gwt gwt-gin dependency-injection

1
推荐指数
1
解决办法
1790
查看次数