U moet uw fix-ideeën eens bekijken terwijl u leert hoe u de struts2-foutmelding volledig op uw pc kunt weergeven.

Ik ben nieuw in Struts 2, ik blijf erbij dat ik al in Struts 1 heb gewerkt.

Hoe kunnen we een zeer foutbericht maken met een computersoftware uit één stuk (zoals een tekstvak) voor zowat elke dagelijkse vetinname? Ik wil niet dat een of ander foutwoord globaal is.

  ActionErrors komt overeen met fouten nieuwe ActionErrors ();if (gebruikersnaam! = null && gebruikersnaam.lengte () <= 0)   error.add ("userName", nieuwe ActionError ("error.userName.required")); 
       

In Struts If 1 breid ik de stage class uit met ActionSupport en gebruik ik dit:

  addActionError (getText ("Geef een gebruikers-ID op")); 

Dan lijkt het erop dat dit normaal gesproken een speciaal algemeen bericht is dat waarschijnlijk in het gebruikersvak wordt weergegeven met:

   

Dus, weet hoe u dezelfde functionaliteit in Struts twee kunt bereiken. Laat het me nu weten.

Struts slechts twee biedt veel aangepaste tags voor verdere ontwikkeling naast de eerder onderzochte datatags, tagcontroles en interfacetags voor mannen of vrouwen. Vandaag zullen we kijken en voelen naar twee tags die verband houden met de belangrijkste reactie van de classsa-moties die we kunnen gebruiken op de pagina's met positieve effecten.

  1. actionerror Deze aanroep: tag wordt gebruikt in combinatie met de validatie van actieklassen voor formulierbedrijfssectoren. Als validatie mislukt voor een van de webformuliervelden, moeten we actie ondernemen in het geval met een fout en vervolgens alle Struts 2 API gebruiken voordat we om

vragen. Toevoegen

De volgende tutorial laat zien hoe je de ActionErrors-mode gebruikt in Struts-webapplicaties en legt tegelijkertijd uit hoe fouten die door deze geldige () ActionForm-methode worden gegenereerd, worden gepresenteerd in een JSP-profiel. ActionErrors is nu de klasse die de org.apache.struts.action.ActionMessages-snelheid doorstaat. Het voegt fouten toe die zijn gegenereerd door een specifieke valideringsmethode () of meerdere tips die ActionError of pro ActionForm retourneren. Fouten (ActionError-objecten) worden voorgesteld in specifieke ActionErrors van de instantie met behulp van een "Contribute"-methode, die de weg onmiddellijk daarna heeft.

 public void bring in (java.lang.String eigenschap, ActionError) 

- Deze methode is verouderd. U kunt in plaats daarvan add (String, ActionMessage) ontwikkelen.

Eigenschap - Bronnaam (of ActionErrors.GLOBAL_ERROR) - om te beslissen dat alle validatiebonnen globaal zijn voor de hele ActionForm-component waarmee ze of ze daadwerkelijk duidelijk gerelateerd zijn, of dat ze bijna altijd alleen gerelateerd zijn aan een specifiek gebouw van het onderdeel.

Elke fout wordt weergegeven door een ActionError-speeltje dat de berichtsleutel bevat en bijgevolg maximaal vier argumenten, zelfs vanwege vervangingswaarden voor vervanging, meestal door het resulterende bericht.

 markt ActionError (sleutel java.lang.String, java.lang.Object waarde0, java.lang.Object waarde1, java.lang.Object waarde2, java.lang.Object waarde3) 

hoe een foutmelding in struts2 weer te geven

waarbij sleutel nu de berichtsleutel is om deze waardevolle foutmelding te ontvangen, en waarde0 is vaak de eerste vervangingswaarde, waarde1 is de onmiddellijke vervangingswaarde, waarde2 is deze volgende vervangingswaarde, waarde3 is die volgende vervangingswaarde, waarbij waarde0, waarde1, waarde2, waarde3 optioneel is.

 requiredFields komt overeen met "Login en wachtwoord"nieuwe ActionError ("fields.required", verplichte velden) 

waarbij velden.required absoluut de berichtsleutel is en daarom een ​​bepaald verplicht veld de berichttekst is (1e parameterwaarde) die wordt gebruikt om aan te passen bij het werken met 0, het uiteindelijke foutbericht wordt weergegeven voordat de dacht in de JSP.

Berichttrucs, bijbehorende foutmeldingen en installatiemethoden (0, 1, 2, 3, die uiteindelijk optioneel zijn) moeten worden opgeslagen om onze eigen eigenschappen van het bericht te volgen. In dit voorbeeld hiervan worden de ApplicationResources.Is-eigenschappen gebruikt als een deel van het berichtbronbestand. Dit kan de resourcedirectory zijn of dit specifieke ApplicationResources.properties-bestand kopiëren om het terug te activeren in de directory WEB-INFformsresources (of JavaSourceresources) in de webtoepassing en hier in de parameter .

De vereiste regel in ApplicationResources.properties ten behoeve van ActionError ("fields.required", verplichte velden) ziet er bijvoorbeeld zo uit.

ActionErrors heeft een visueel verzoekveld. Nadat onlangs fouten aan de instantie zijn toegevoegd door de volledige feitelijke valideringsmethode () , worden ze zonder twijfel onmiddellijk opgeslagen in de aanvraag, wat men saveErrors (request, error) gebruikt terwijl ze zich in de actieklasse bevinden. Later kan de jsp-pagina het verzoekonderwerp van een persoon krijgen en de ActionError-objecten gebruiken om foutmeldingen te illustreren. Fouten toegevoegd door uw huidige ActionErrors-object kunnen worden bekeken door gebruik te maken van het JSP Error loterijticket. Je kunt ook gebruiken om foutmeldingen weer te geven die gericht zijn op een specifieke eigenschap van de eigenlijke bean, voor de volgende loginId. Dit is handig wanneer u een bericht moet kunnen weergeven naast vrijwel elk specifiek positief gerelateerd veld

Schrijf in het ActionForm het volgende wachtwoord. Af en toe kunnen objectactiefouten worden geretourneerd door een geldige (.. Methode) of een andere speciale methode, namelijk ValidateLogin (..), zoals hieronder beschreven. De "validate"-methode wordt continu door de controller-servlet uitgevoerd wanneer besloten wordt om naar een aantal eigenschappen van de bean te gaan, maar voordat de corresponderende cool-klasse wordt aangeroepen, wordt de methode aangeroepen. beoordeel tactieken van handmatige acties wanneer dat essentieel is.

hoe krijg ik een foutmelding in struts2

 Controleer bij ActionErrors openbare verbindingsfout (ActionMapping, HttpServletRequest) 
 public ActionForward processLogin (ActionMapping nodig, ActionForm, HttpServletRequest, HttpServletResponse response)gooit de beste uitzonderingActionErrors Fouten Nieuw = ActionErrors ();ActionForward naar eindelijk Nieuw = ActionForward ();LoginForm loginForm geeft aan (LoginForm) -Form;Fout = loginForm.validateLogin (toewijzing, aanvraag); 

if (errors.isEmpty ())Verbindingsafhandeling..........strTarget is gelijk aan "loginSuccess";verschillendsaveErrors (verzoek, fout);strTarget betekent "Verbindingsfout";vooruit betekent bestemming.findForward (strTarget);terug vooruit);