Я думаю, что это невозможно только с JXPath, так как это реализация XPath, а не реализация XSLT. XSLT использует XPath как часть языка, но это больше, чем это.
То, что вы можете попытаться сделать, это сериализовать ваши bean-компоненты в XML, преобразовать XML с помощью XSLT и десериализовать полученный XML в целевой класс. Таким образом, для вашего личного объекта вы можете получить
<person>
<firstName>John</firstName>
<lastName>Doe</lastName>
</person>
Вы можете использовать XSLT с таким шаблоном, как этот
<xslt:template match="/person">
<human>
<name><xslt:value-of select="./firstName"/> <xslt:value-of select="./lastName"/></name>
</human>
</xslt:template>
Это должно привести к документу результата, как это:
<human>
<name>John Doe</name>
</human>
Этот документ можно затем десериализовать в экземпляр класса Human.
Примечание: XML-представления bean-компонентов составлены для примера. На самом деле, вы можете использовать java.beans.XMLEncoder или искать любую другую реализацию связывания Java / XML, которая существует (JAXB и т. Д.)