Я пытаюсь интегрировать действие Tiles with Struts 2, основанное на аннотациях, но оно работает неправильно.Интеграция плитки с Struts 2 Аннотация
Поскольку у меня нет struts-config.xml
, и в каждом учебнике, доступном в Интернете, они ссылаются на него с struts-config.xml
.
Во-первых, можно интегрировать действие стоек на основе аннотаций с использованием плит. Если да, то как?
@Action(value="/login",results={@Result(name="success",location="/home",type=TilesResult.class),
@Result(name="login",location="/jsp/userLogin.jsp")})
public String execute() {
Это то, что мой код, но он всегда дает мне ошибку в MyEclipse на TilesResult.class
что
Type mismatch: cannot convert from Class<TilesResult> to String
У меня есть зависимость в моем ПОМ:
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-tiles-plugin</artifactId>
<version>2.1.8</version>
</dependency>
Может кто-нибудь помочь мне, как для добавления плиток в действиях, основанных на аннотациях
я использовал type="tiles"
вместо type=TilesResult.class
тогда он дал мне ниже исключения
Caused by: The Result type [tiles] which is defined in the Result annotation on the class [class com.actions.LoginAction] or determined by the file extension or is the default result type for the PackageConfig of the action, could not be found as a result-type defined for the Struts/XWork package [com.actions#convention-default#] - [unknown location]
at org.apache.struts2.convention.DefaultResultMapBuilder.createResultConfig(DefaultResultMapBuilder.java:422)
at org.apache.struts2.convention.DefaultResultMapBuilder.createFromAnnotations(DefaultResultMapBuilder.java:394)
at org.apache.struts2.convention.DefaultResultMapBuilder.build(DefaultResultMapBuilder.java:202)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.createActionConfig(PackageBasedActionConfigBuilder.java:800)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildConfiguration(PackageBasedActionConfigBuilder.java:586)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:318)
at org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:53)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:204)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
Пробовали ли вы с 'типа = "плитки"'? Также вам нужно убедиться, что ваш родительский пакет расширяет фрагменты по умолчанию. –
Да, но после этого он дал мне следующее исключение: Сообщение обновлено –
Убедитесь, что в комплект поставки включен плагин codebehind. –