2014-01-29 2 views
0

gwt 프로젝트를 실행하려고합니다. 이 프로젝트에는 3 개의 모듈이 있습니다. 1-StudentSystem2
2-EnterStudent 3-GetStudent.GWT 다른 모듈에서 같은 서비스를 사용하는 방법

학생 ID, 이름, 부서를 입력 클래스에 입력하고 추가 버튼을 클릭하면 데이터베이스에 추가하고 창을 변경합니다. 하지만

를 찾지 파일을 제공하지 않습니다 추가 버튼을 클릭 할 때 : /com.example.studentsystem2.client.enterStudent.enterStudent/dao

및 인쇄의 XXX합니다. 어떻게 내가 DAO 서비스에 두 개의 모듈을 연결할 수 있습니까 ?? 여기

패키지 구조이다.

com.example.studentSystem2 
    -> studentSystem2.gwt.xml 
|com.example.studentsystem2.client 
    -> StudentSystem2.java 
    ||com.example.studentSystem2.client.enterStudent 
     ->enterStudent.gwt.xml 
    ||com.example.studentSystem2.client.enterStudent 
     ->Enter.java 
     ->EnterStudent.java 
     ->Enter.ui.xml 

    ||com.example.studentSystem2.client.getStudent 
     ->getStudent.gwt.xml 
    ||com.example.studentSystem2.client.getStudent 
     ->Get.java 
     ->GetStudent.java 
     ->Get.ui.xml 
    ||com.example.studentSystem2.client.request 
     ->Dao.java 
     ->DaoAsync.java 
     ->EMF.java 
     ->StudentInfo.java 
|com.example.studentSystem2.server 
    ->DaoImpl.java 

여기

@UiHandler("addButton") 
     void onAddButtonClick(ClickEvent event) { 

      dao.addStudentInfo(IdTextField.getText(),nameTextField.getText(),departmentTextField.getText(),new AsyncCallback<Void>() { 
       @Override 
       public void onFailure(Throwable caught) { 

        System.out.println("xxx"); 
       } 

       public void onSuccess(Void ignore) { 
        Window.Location.replace("http://127.0.0.1:8888/GetStudent.html?gwt.codesvr=127.0.0.1:9997"); 
       } 
      }); 
    } 

Enter.java

및 다오의 온 클릭 방법 (미안 때문에 평판의 부족 이미지를로드하지 않음). 자바 클래스

@RemoteServiceRelativePath("dao") 
public interface Dao extends RemoteService { 
    public List<StudentInfo> listInfos(); 
    public void addStudentInfo(String SId, String name, String department); 
    public void remove(String id); 


} 
+0

이 고양이를 피하는 데는 여러 가지 방법이 있습니다. 당신은 의존성 주입을 전혀 고려하지 않았습니까? – Jonathan

+0

나는 그것에 대해 전혀 몰랐다. – ali

답변

0

당신은 그것을 할 수 'N'w ays. 내가 선호하는 한 가지 방법은 서비스와 구현을 별도의 모듈에 보관하는 것입니다. 그런 다음이 모듈을 다른 모듈에 대한 종속성으로 추가하십시오. 그런 다음 종속성을 추가 한 동일한 서비스에 액세스 할 수 있습니다.

+0

이 아키텍처가 적절하지 않다는 것을 의미합니까 ?? – ali

관련 문제