You should specify the timezone, too (and also the english locale for safety):
<h:outputText value="#{someBean.endDate}">
<f:convertDateTime pattern="d MMM yyyy" timeZone="GMT" locale="en" />
</h:outputText>
Hereby I assume that the input is in UTC-timezone (that is the literal date was originally stored relative to UTC), so using the same offset for output format will not change the date (and your intermedium output of "5/1/2014" was just the default US-format changed by the same offset effect).
If you have stored your date using another timezone conversion then you have to adjust the timeZone-attribute (for example "Europe/London").
UPDATE: I have found this SO-question which should help you, too.