2013-01-11 12 views
5

Mam szablon play 2.0 z następującymi pierwszych linii:importowany pakiet nie jest dostępny w grze! ramy szablonu

@(item: Option[Item] = None, 
    violations: java.util.Set[ConstraintViolation[Item]] = new util.HashSet[ConstraintViolation[Item]]()) 

@import java.util 
@import javax.validation.ConstraintViolation 

Ale ConstraintViolation nie można znaleźć i pojawia się błąd:

not found: type ConstraintViolation 

Samo API walidacji fasola jest dostępny w wniosek, ponieważ mogę go użyć w kontrolerze. Co mogę zrobić, aby zaimportować go do mojego szablonu?

Odpowiedz

9

Albo użyć pełnej nazwy, tzn @(item: Option[Item] = None, violations: java.util.Set[javax.validation.ConstraintViolation[Item]] = new util.HashSet[javax.validation.ConstraintViolation[Item]]()) lub dodać do ogólnego importu szablonów w Build.scala coś takiego:

val main = PlayProject(appName, appVersion, appDependencies, mainLang = SCALA).settings(
    templatesImport += "javax.validation.ConstraintViolation" 
) 
+0

Wow, to bardzo wygodne. – pedrofurla

+0

Dziękuję. Ale dlaczego nie można importować paczki? Czy istnieje reguła, w której importowanie jest możliwe, a kiedy nie? – deamon

+0

Twój import działa, ale przychodzi po liście parametrów. Tak więc na liście parametrów typ wciąż nie jest znany. –

Powiązane problemy