2013-04-22 3 views
0

Я довольно новичок в Java, поэтому несите меня. Я не могу на всю жизнь понять, почему я получаю a не найти символ ошибка на ресурсеResolver.resolve. Когда на линии над ним я определяю переменную. Может быть, это что-то простое, что мне не хватает, но я не могу понять это, и я чувствую, что у меня так долго смотрел на этот путь.Java не может найти символ в переменной

private static final String ROOTCHILD = "rootChild"; 

public void setResource(Resource resource) { 
    this.resource = resource; 
} 

public void setProperties(ValueMap properties) { 
    this.properties = properties; 
} 

public Page getRootPage() { 
    ResourceResolver resourceResolver = getResource().getResourceResolver(); 
    return (this.properties != null) 
     ? resourceResolver.resolve(
      properties.get(ROOTCHILD,currentPage.getPath())).adaptTo(Page.class) 
     : null; 
} 
+3

Просто отказаться от очевидного: Является ли класс 'ResourceResolver' импортированы? – Barranka

+0

Вы должны определить переменную wihch, которая ссылается на this.resource. –

+0

@Barranka спасибо, что ответили да, он импортируется. –

ответ

0

Моя догадка (никогда не работала с перевязью и не использовало Java на некоторое время):

Я думаю, что проблема вы инициализирован ValueMap properties так, что она не содержит String с или HttpServletRequest s, но что-то еще. Метод .resolve() принимает только String или HttpServletRequest. (Или два параметра, но вы только передаете один, так что этого не может быть.) Нет найденного метода .resolve(), принимающего параметры, которые вы пытаетесь дать, поэтому этот символ не найден!

0

Чтобы увидеть истинную ошибку, переписать код и скомпилировать его:

public Page getRootPage() { 
    if(properties == null) { 
     return null; 
    } 
    YYYYYY resource = getResource(); 
    ResourceResolver resourceResolver = resource.getResourceResolver(); 
    String path = currentPage.getPath(); 
    String rootChild = properties.get(ROOTCHILD, path); 
    XXXXXX rc = resourceResolver.resolve(rootChild); 
    return rc.adaptTo(Page.class); 
} 
Смежные вопросы