# Tomcat6 => EL



## freez (14. Nov 2012)

Hallo Community

ich habe folgendes Konstrukt:

Tomcat 6
JSF2
Primefaces 3.4
Spring 3

Ich möchte eine Datatable von Primefaces nutzen:
   [XML] <h:form> 
<p:dataTable var="car" value="#{tableBean.carsSmall}">  

        <p:column headerText="Color">  
            <p:commandButton value="CALL" actionListener="#{tableBean.save(car)}"></p:commandButton>
        </p:column>  
    </p:dataTable>
</h:form> [/XML]

Mit Tomcat 7 in einem anderen Projekt funktioniert der ActionListener mit der Übergabe der VAR [c]car[/c]. Allerdings habe ich nur Tomcat 6 zur Verfügung. Kann ich mein Projekt (Eclipse) so konfigurieren, oder mit jars ausstatten, dass ich obigen actionListener unter der 6er Version so nutzen kann?


----------



## pl4gu33 (15. Nov 2012)

Das Tutorial is zwar schon ein wenig älter, aber ich glaub, das is was du meinst 


```
<!-- Tomcat 6 need this -->
		<dependency>
			<groupId>com.sun.el</groupId>
			<artifactId>el-ri</artifactId>
			<version>1.0</version>
		</dependency>
```

JSF 2.0 hello world example

ansonsten frage ich mich was du vor hast,... du könntest in deiner Table das Car per Selection der Table in ein eigenes Attribut schreiben und das dann in der Save- Methode verarbeiten.... oder verstehe ich falsch, was du vor hast?


----------



## freez (15. Nov 2012)

Danke, das werde ich dann gleich mal testen.



pl4gu33 hat gesagt.:


> du könntest in deiner Table das Car per Selection der Table in ein eigenes Attribut schreiben und das dann in der Save- Methode verarbeiten.... oder verstehe ich falsch, was du vor hast?



Hm, meinst du, erst in der Table mit der Maus den DS markieren und dann die Aktion ausführen?

Der Button steht nur exemplarisch dafür, was ich machen will. Genau genommen habe ich ein [c]p:inplace[/c] mit editor true. Da setze ich ein [c]p:ajax[/c] auf event save ein und im listener speichere ich dann die Änderung. Und da ist es natürlich wunderschön, wenn die richtige Instanz bereits der Methode übergeben wird.


----------



## freez (15. Nov 2012)

OK, habe jetzt mal rumgespielt ... und diese Lösung scheint nun zu funktionieren:
pom.xml:
[XML]		<!-- Tomcat 6 need this -->

		<dependency>
			<groupId>javax.el</groupId>
			<artifactId>el-api</artifactId>
			<version>2.2</version>
		</dependency>


		<!-- --><dependency>
		  <groupId>org.glassfish.web</groupId>
		  <artifactId>el-impl</artifactId>
		  <version>2.2</version>
	     </dependency>
[/XML]

web.xml:
[XML]<context-param>
    <param-name>org.apache.myfaces.EXPRESSION_FACTORY</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>
  <context-param>
    <param-name>com.sun.faces.expressionFactory</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
  </context-param>[/XML]

Hole ich mir damit vielleicht andere Probleme damit ins Boot? Oder sollte das unter Tomcat6 problemlos laufen?


----------

