Как Вы используете переменную в xsl при попытке выбрать узел?

Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:

  1. Вызов метода экземпляра объекта null.
  2. Доступ или изменение поля объекта null.
  3. Принимая длину null, как если бы это был массив.
  4. Доступ или изменение слотов null, как если бы это был массив.
  5. Бросок null как будто это было значение Throwable.

Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null.

Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html

16
задан Michael Schmidt 4 July 2013 в 12:24
поделиться

2 ответа

Хорошо, я наконец понял это. Глупая проблема действительно, я просто должен был не учесть кавычки и фигурные скобки. Одно из тех времен, когда я мысль , что я уже попробовал это.:D О, и я ввел @myId с опечаткой в первом примере, код был на самом деле $myId.

<xsl:variable name="myId" select="@id" />
<xsl value-of select="//Root/Some/Other/Path/Where[@id=$myId]/@Name" />
17
ответ дан 30 November 2019 в 22:02
поделиться

Вы, кажется, перепутали с использованием переменной (который является просто $variable), и Шаблоны Значения атрибута, которые позволяют Вам помещать любое выражение XPath в некоторые атрибуты, например,

<newElement Id="{@Id}"/>

Они могут, очевидно, быть объединены, таким образом, можно включать переменную в Шаблон Значения атрибута, такой как:

<newElement Id="{$myId}"/>
5
ответ дан 30 November 2019 в 22:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: