Da segunda linha:
java.lang.RuntimeException: Specification violation [EJB3 JPA 6.2.1.2] -
You have not defined a jta-data-source for a JTA enabled persistence
context named: ehr-punit
Esta linha aqui sugere uma solução para um dos seus problemas. Tente criar um jta-data-source chamado ehr-punit.
Isso pode ser uma grande isenção, já que não tenho conhecimento sobre JTA ou JBoss.
Um pouco mais abaixo, você tem:
org.springframework.beans.factory.BeanDefinitionStoreException:
Unexpected exception parsing XML document from ServletContext resource
[/WEB-INF/applicationContext.xml]; nested exception is
java.lang.ClassCastException: org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
cannot be cast to javax.xml.parsers.DocumentBuilderFactory
Isso significa que o Spring está tentando injetar um DocumentBuilderFactoryImpl em um método que está esperando um javax.xml.parsers.DocumentBuilderFactory. Claramente, o primeiro não implementa ou estende o segundo. Eu tentaria usar uma versão diferente de xerces para ver se isso mudou recentemente.