exception in trigger

Обсуждаем TrackStudio по-русски

exception in trigger

Postby sni » Mon Aug 02, 2010 8:45 pm

Здравствуйте,
Использую TrackStudio 4.0.4

создал before-trigger, проверяющий данные и, в случае чего выбрасывающий ошибку
Code: Select all
throw new UserException("");

триггер отрабатывает правильно, но вместо сообщения юзеру выводится:
Возникла ошибка ClientBeforeCreateTrigger.class java.lang.reflect.InvocationTargetException

А где мое сообщение?
пробовал также GranException и даже UnsupportedOperationException

Код триггера:
Code: Select all
package scripts.before_create_task;

import java.util.ArrayList;
import java.util.Iterator;

import com.trackstudio.exception.GranException;
import com.trackstudio.exception.UserException;

import com.trackstudio.secured.SecuredTaskBean;
import com.trackstudio.secured.SecuredTaskTriggerBean;

public class ClientBeforeCreateTrigger {
   public SecuredTaskTriggerBean execute(SecuredTaskTriggerBean task) throws GranException {
      
      String name = task.getName();
      
      ArrayList<SecuredTaskBean> bcl = task.getAncestors();
      SecuredTaskBean parent = bcl.get(bcl.size()-1);//parent
      
      Iterator<SecuredTaskBean> childIterator = parent.getChildren().iterator();
      boolean uniq = true;
      while(childIterator.hasNext()){//name search
         if(name.equals(childIterator.next().getName())){
            uniq = false;
            break;
         }         
      }
      if(!uniq)//found
         throw new UserException("Компания с таким именем уже есть в списке клиентов‭!");
      //TODO check why user see no message
      
      return task;
   }

}
sni
 
Posts: 7
Joined: Tue Jul 27, 2010 8:12 am

Re: exception in trigger

Postby a-b-c » Tue Aug 03, 2010 9:55 am

попробуйте
Code: Select all
throw new UserMessageException("Exception message");
TrackStudio 4.0.14 x64
Windows SA + PostgreSQL 9.1
a-b-c
 
Posts: 548
Joined: Fri Jul 10, 2009 10:15 am
Location: Moscow, Russia

Re: exception in trigger

Postby admin » Tue Aug 03, 2010 10:36 am

Проблему посмотрим, но сейчас завалены, поэтому в течение этой-следующей недели.
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 7305
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Re: exception in trigger

Postby sni » Tue Aug 03, 2010 10:58 am

a-b-c wrote:попробуйте
Code: Select all
throw new UserMessageException("Exception message");

всё точно также
sni
 
Posts: 7
Joined: Tue Jul 27, 2010 8:12 am

Re: exception in trigger

Postby Petr » Tue Aug 03, 2010 11:40 am

пока просто можете использовать System.out.println(""); или log.error("").
TS Support
email: parsentev@yandex.ru
Petr
 
Posts: 1125
Joined: Wed Aug 12, 2009 4:38 pm

Re: exception in trigger

Postby Petr » Tue Aug 03, 2010 3:33 pm

проверил ваш скрипт у меня он выводит "Компания с таким именем уже есть в списке клиентов‭!"
опишите подробно как вы его создаете и что вы выполняете что бы его вызвать.
кстати. в 4.0.5. все скрипты должны расширять соответствующие интерфейсы. без них будет ругаться, например ваш скрипт будет писать такое.
This script ClientBeforeCreateTrigger.class have type scripts/before_create_task so you need do implement com.trackstudio.external.TaskTrigger interface!
TS Support
email: parsentev@yandex.ru
Petr
 
Posts: 1125
Joined: Wed Aug 12, 2009 4:38 pm

Re: exception in trigger

Postby sni » Wed Aug 04, 2010 12:32 pm

ну я компилирую класс, заменяю его в веб-приложении трекстудии, в scripts/before_create_task.
Как before trigger он уже назначен для категории. создаю клиента
Пробовал перезагружать tomcat
Petr wrote:проверил ваш скрипт у меня он выводит "Компания с таким именем уже есть в списке клиентов‭!"
опишите подробно как вы его создаете и что вы выполняете что бы его вызвать.
кстати. в 4.0.5. все скрипты должны расширять соответствующие интерфейсы. без них будет ругаться, например ваш скрипт будет писать такое.
This script ClientBeforeCreateTrigger.class have type scripts/before_create_task so you need do implement com.trackstudio.external.TaskTrigger interface!

на какой версии проверяли? Если в 4.0.5 баг не повторяется - отлично, подождём релиза
sni
 
Posts: 7
Joined: Tue Jul 27, 2010 8:12 am


Return to TrackStudio Support [Russian]

Who is online

Users browsing this forum: No registered users and 0 guests