Note that there are some explanatory texts on larger screens.

plurals
  1. POAutoComplete texinput : Struts 2.1.8.1, jsp, ActionClass
    primarykey
    data
    text
    <p>I'm trying to create an autocomplete text input.</p> <p>I've heard that it's also best now to use <code>&lt;sj:autocompleter&gt;</code> rather than <code>&lt;sx:autocompleter&gt;</code> because dojo is deprecated but I'm stuck.</p> <p>I want to know how I can call a method in my Action class and get that displayed on the JSP.</p> <p>I've seen others that suggest in the <code>struts.xml</code> to extend a package from <code>json-default</code>.</p> <p>I tried that then my class wouldn't work (because it's defined in a different package).</p> <p>I've cut the files down to bare so here's what I have, please help:</p> <p>pom dependencies:</p> <pre><code>&lt;dependencies&gt; &lt;!-- Struts 2 --&gt; &lt;dependency&gt; &lt;groupId&gt;org.apache.struts&lt;/groupId&gt; &lt;artifactId&gt;struts2-core&lt;/artifactId&gt; &lt;version&gt;2.1.8.1&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;org.apache.struts&lt;/groupId&gt; &lt;artifactId&gt;struts2-sitemesh-plugin&lt;/artifactId&gt; &lt;version&gt;2.1.8.1&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;org.apache.struts&lt;/groupId&gt; &lt;artifactId&gt;struts2-spring-plugin&lt;/artifactId&gt; &lt;version&gt;2.1.8.1&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;javax.servlet&lt;/groupId&gt; &lt;artifactId&gt;jsp-api&lt;/artifactId&gt; &lt;version&gt;2.0&lt;/version&gt; &lt;scope&gt;provided&lt;/scope&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;mysql&lt;/groupId&gt; &lt;artifactId&gt;mysql-connector-java&lt;/artifactId&gt; &lt;version&gt;5.0.5&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;org.apache.ibatis&lt;/groupId&gt; &lt;artifactId&gt;ibatis-sqlmap&lt;/artifactId&gt; &lt;version&gt;2.3.0&lt;/version&gt; &lt;/dependency&gt; &lt;/dependencies&gt; </code></pre> <p>Complete application-context.xml:</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"&gt; &lt;beans&gt; &lt;bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"&gt; &lt;property name="location" value="classpath:jdbc.properties"/&gt; &lt;/bean&gt; &lt;bean id="baseCarsAction" class="com.microed.cars.web.BaseCarsAction" singleton="false" &gt; &lt;property name="carsService" ref="carsService"/&gt; &lt;/bean&gt; &lt;bean id="homeAction" class="com.microed.cars.web.HomeAction" singleton="false" parent="baseCarsAction" &gt; &lt;/bean&gt; &lt;bean id="carsService" class="com.microed.cars.business.CarsService" singleton="false" &gt; &lt;property name="carsDAO" ref="carsDAO"/&gt; &lt;/bean&gt; &lt;bean id="carsDAO" class="com.microed.cars.dataaccess.CarsDAO" singleton="false" /&gt; &lt;/beans&gt; </code></pre> <p>Complete home.jsp (note my comment 'how do i get results here')</p> <pre><code> &lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; &lt;%@taglib prefix="s" uri="/struts-tags" %&gt; &lt;s:form action="index" &gt; &lt;s:url id="loginURL" action="login" /&gt; &lt;div class="row"&gt; &lt;div class="span4"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="transBlock"&gt; &lt;div class="row"&gt; &lt;div class="span7 offset1"&gt; &lt;s:textfield name="searchTags" cssClass="span7" placeholder="%{getText('placeholder.search.home')}" /&gt; &lt;/div&gt; &lt;div class="span2 offset1" title="&lt;s:text name='tooltip.search.keywords'/&gt;" &gt; &lt;s:submit key="button.search" method="searchTags" cssClass="btn btn-success span2" id="btnSearch" /&gt; &lt;/div&gt; &lt;!-- after calling getData in action class - how do I display it here? --&gt; &lt;/div&gt; &lt;/div&gt; &lt;/s:form&gt; </code></pre> <p>Complete HomeAction:</p> <pre><code>package com.microed.cars.web; import java.sql.SQLException; public class HomeAction extends BaseCarsAction { /** How do I call this when user inputs into a text field? **/ public void getData() throws SQLException { } @Override public String execute() throws Exception { return INPUT; } } </code></pre> <p>Base Action class to inject service:</p> <pre><code>package com.microed.cars.web; import org.springframework.beans.factory.annotation.Required; import com.microed.cars.business.CarsService; import com.opensymphony.xwork2.ActionSupport; public class BaseCarsAction extends ActionSupport { protected CarsService carsService; protected String searchTags; @Required public void setCarsService(CarsService carsService) { this.carsService = carsService; } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload