Вам необходимо указать исключенный тип атрибута пользовательского тега. По умолчанию это java.lang.String
, и контейнер JSP приводит атрибут к строке, прежде чем передать его в тэг. Таким образом, он вызывает toString в вашем массиве String.
<%@ attribute name="items" required="true" type="java.lang.String[]" %>
или
<%@ attribute name="items" required="true" type="[Ljava.lang.String" %>
должен сделать свое дело. Если ни один не делает, используя
<%@ attribute name="items" required="true" type="java.lang.Object" %>
следует, но это менее понятно.