diff --git a/bval-tck/pom.xml b/bval-tck/pom.xml
index 745f514..5fdb4c2 100644
--- a/bval-tck/pom.xml
+++ b/bval-tck/pom.xml
@@ -173,10 +173,6 @@
                             <suiteXmlFiles>
                                 <suiteXmlFile>${basedir}/src/test/beanvalidation-tck-tests-suite.xml</suiteXmlFile>
                             </suiteXmlFiles>
-                            <environmentVariables>
-                                <!-- force english locale and UTF8 because the TCK checks the messages -->
-                                <LANG>en_EN.UTF-8</LANG>
-                            </environmentVariables>
                             <systemProperties>
                                 <property>
                                     <name>validation.provider</name>
diff --git a/bval-tck/src/main/java/org/apache/bval/arquillian/jndi/BValJndiFactory.java b/bval-tck/src/main/java/org/apache/bval/arquillian/jndi/BValJndiFactory.java
index 3b3d71c..13cc1fe 100644
--- a/bval-tck/src/main/java/org/apache/bval/arquillian/jndi/BValJndiFactory.java
+++ b/bval-tck/src/main/java/org/apache/bval/arquillian/jndi/BValJndiFactory.java
@@ -26,9 +26,15 @@
 import java.lang.reflect.Method;
 import java.lang.reflect.Proxy;
 import java.util.Hashtable;
+import java.util.Locale;
 
 // mock a context to satisfy lookups
 public class BValJndiFactory implements InitialContextFactory {
+    public BValJndiFactory() {
+        // this is an ugly hack, but the TCK expects us to get english validation messages :(
+        Locale.setDefault(Locale.ENGLISH);
+    }
+
     public Context getInitialContext(final Hashtable<?, ?> environment) throws NamingException {
         return Context.class.cast(Proxy.newProxyInstance(Thread.currentThread().getContextClassLoader(),
             new Class<?>[] { Context.class }, new InvocationHandler() {
diff --git a/bval-tck/work-tests-suite.xml b/bval-tck/work-tests-suite.xml
index a6c08c6..9997a27 100644
--- a/bval-tck/work-tests-suite.xml
+++ b/bval-tck/work-tests-suite.xml
@@ -21,8 +21,8 @@
 <suite name="tmp" verbose="1">
   <test name="tmp">
     <classes>
-<!--       <class name="org.hibernate.beanvalidation.tck.tests.xmlconfiguration.groupconversion.containerelement.XmlBasedContainerElementGroupConversionValidationTest"/> -->
-      <class name="org.hibernate.beanvalidation.tck.tests.bootstrap.BootstrapConfigurationTest"/>
+       <class name="org.hibernate.beanvalidation.tck.tests.xmlconfiguration.constraintdeclaration.containerelementlevel.ContainerElementTypeConstraintsForParameterXmlMappingTest"/>
+<!--      <class name="org.hibernate.beanvalidation.tck.tests.bootstrap.BootstrapConfigurationTest"/>-->
 <!--
       <class name="org.hibernate.beanvalidation.tck.tests.util.ConstraintViolationAssertTest"/>
 -->
