1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.myfaces.view.facelets.el;
20
21 import javax.el.ELContext;
22 import javax.el.ValueExpression;
23 import javax.el.ValueReference;
24 import javax.faces.context.FacesContext;
25 import javax.faces.view.Location;
26
27
28
29
30
31
32
33 public class ResourceLocationValueExpressionUEL extends ResourceLocationValueExpression
34 {
35
36 private static final long serialVersionUID = 1824869909994211424L;
37
38 public ResourceLocationValueExpressionUEL()
39 {
40 super();
41 }
42
43 public ResourceLocationValueExpressionUEL(Location location, ValueExpression delegate)
44 {
45 super(location, delegate);
46 }
47
48 @Override
49 public ValueReference getValueReference(ELContext context)
50 {
51 FacesContext facesContext = (FacesContext) context.getContext(FacesContext.class);
52 ResourceELUtils.saveResourceLocationForResolver(facesContext, location);
53 try
54 {
55 return delegate.getValueReference(context);
56 }
57 finally
58 {
59 ResourceELUtils.removeResourceLocationForResolver(facesContext);
60 }
61 }
62
63 }