2015-04-22 5 views
0

Я пытаюсь запустить таймер, но получить «Проверка модели ресурса приложения не удалась при инициализации приложения». Я использую Jax-rs на tomcat.Webservice с использованием jaxrs, начиная таймер

@Path("/startGame") 
public void startGame(){ 
    GameTimer timer = new GameTimer(1000); 
    timer.start(); 
} 

Это GameTimer:

public class GameTimer { 

private Timer timer; 
private long interval; 

public GameTimer(long interval) { 
    this.interval = interval; 
} 

/** 
* 
*/ 
public void start() { 
    this.timer = new Timer(); 
    TimerTask task = new TimerTask() { 
      @Override 
      public void run() { 
      new GameEvent(GameEvent.STEP).dispatch(); 
      };}; 
    timer.schedule(task, interval, interval); 
} 

public void setInterval(long interval) { 
    this.interval = interval; 
    stop(); 
    start(); 
} 

/** 
* 
*/ 
public void stop() { 
    timer.cancel(); 
} 

/* (non-Javadoc) 
* @see java.lang.Object#toString() 
*/ 
@Override 
public String toString() { 
    StringBuilder builder = new StringBuilder(); 
    builder.append("GameTimer [timer=").append(timer).append("]"); 
    return builder.toString(); 
} 
} 
+0

Что такое GameTimer? –

+0

Его собственная письменная классная ведьма обрабатывает наши таймеры. Нам нужно остановить их, ускорить или замедлить. Это прекрасно работает, когда вызывается где-то в другом месте, кроме как при запуске в webserivce. –

+0

Вы импортировали этот класс в свой веб-сервис? –

ответ

0

Это работает здесь я использовал GET аннотацию, которая говорит веб-службы, что делать.

@Path("/{startGame}") 
@GET 
@Produces(MediaType.TEXT_PLAIN) 

public String startGame(){ 
    GameTimer timer = new GameTimer(1000); 
    timer.start(); 
    return "Timer Started"; 
} 

Надеюсь, это поможет!