Author Topic: MaGSA - Modelovanie a generovanie softvérových architektúr  (Read 44328 times)

lorddoom

  • Newbie
  • *
  • Posts: 20
    • View Profile
diky Janco ;-))) pomohol si mi

mishelka

  • Hero Member
  • *****
  • Posts: 4269
  • Bacikova, nie Kreutzova. Bacikova!! :D
    • View Profile
Ide vam ten regex na databze ??? ja pouzivam normalnu derby JAVA a ked davam check like porovnat tak mi to nefunguje a na nete som nasiel ze sa regex v sql robi pomocou check like. Tabulku vytvori ale potom musim zadat presne do property kde mam regex presne ten string ktory som dal ako regex pricom cez test mi to prejde.

http://www.java2s.com/Tutorial/Oracle/0120__Table/SettingtheRegularexpressioncheckforvarcharfield.htm

tu je prikald ale mne to tak nefunguje neviem ci to derby nepodporuje.

a moj create

CREATE TABLE Zamestanenec (
  ident INTEGER PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
  meno  VARCHAR(32) NOT NULL CHECK( (LENGTH(meno) >= 2) AND (LENGTH(meno) <= 32)  AND (meno LIKE '[A-Za-z]+')),
  priezvisko  VARCHAR(16) NOT NULL CHECK( (LENGTH(priezvisko) >= 0) AND (LENGTH(priezvisko) <= 16) ),
  vek INT NOT NULL CHECK((vek >= 0) AND (vek <= 150))
);

cez test v dao mi prejde meno ale pri vkladani do db hodi ze sa nezhoduje z regexom a musim napisat presne [A-Za-z]+ inak nesplnim podmienku

a nefunguje ani ten ich regex neviem ci to derby potporuje alebo nie...
http://www.network-theory.co.uk/docs/postgresql/vol1/SIMILARTORegularExpressions.html

neviem ci to pojde aj v javadb :)
« Last Edit: 31.03.2011, 16:39:12 by mishelka »
  

#define TRUE FALSE //Happy debugging suckers :D

Kvacinka

  • Newbie
  • *
  • Posts: 29
    • View Profile
ja som nato prisiel mne neslo o regular. vyraz ako zapisat ja co som tam dal tak to nebralo. Samotni test v projecte co sa tam robi mi presiel ale db ma nepustila pridat ten prvok ze zly constraint. Ale som si zaregistroval jednu mysql db a na tej mi to ide v pohode... cize to nepodoporuje java db...
« Last Edit: 31.03.2011, 20:49:27 by Kvacinka »

jardo

  • Sr. Member
  • ****
  • Posts: 288
    • View Profile
ludia neviete cim to asi bude ze mi vyhodi tuto chybu
Code: [Select]
Exception in thread "main" java.lang.NullPointerException
        at sk.tuke.magsa.framework.CRUDDaoImpl.create(CRUDDaoImpl.java:32)
        at Make.main(Make.java:34)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)

uz som sputil databzu a vytvoril v nej tieto tabulky
Code: [Select]
CREATE TABLE Oddelenie (
  ident INTEGER PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
  nazov VARCHAR(100),
  kod VARCHAR(100),
  poschodie INTEGER
);

CREATE TABLE Zamestnanec (
  ident INTEGER PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
  priezvisko VARCHAR(16) NOT NULL CHECK((LENGTH(priezvisko) BETWEEN 0 AND 16)),
  vek INTEGER NOT NULL CHECK(vek BETWEEN 18 AND 120),
  adresa VARCHAR(250) CHECK((LENGTH(adresa) BETWEEN 3 AND 250)),
  mzda FLOAT
);

a ked cchem sputit magsa generated tak mi to vyhodi tu chybu

mishelka

  • Hero Member
  • *****
  • Posts: 4269
  • Bacikova, nie Kreutzova. Bacikova!! :D
    • View Profile
NullPointer sa tazko zistuje, daj si vsade vypisy cez sout a zisti co mas null...
  

#define TRUE FALSE //Happy debugging suckers :D

mishelka

  • Hero Member
  • *****
  • Posts: 4269
  • Bacikova, nie Kreutzova. Bacikova!! :D
    • View Profile
toto mi to vygenerovalo po 8. cviceni

z chybami:
-----------
- package sk.tuke.magsa.tools.parserext.javacc does not exist
- can not find symbol ParseException

Code: [Select]
package sk.tuke.magsa.tools.parserext;

public class Parser {
  private static sk.tuke.magsa.tools.parserext.javacc.Parser _parser;

  public sk.tuke.magsa.tools.metamodel.Model parse(String input) throws ParseException {
    sk.tuke.magsa.tools.parserext.javacc.ParserTokenManager tm = new sk.tuke.magsa.tools.parserext.javacc.ParserTokenManager(input);
    if (_parser == null) {
      _parser = new sk.tuke.magsa.tools.parserext.javacc.Parser(tm);
    } else {
      _parser.ReInit(tm);
    }

    try {
      tuke.pargen.ReferenceResolver referenceResolver = tuke.pargen.ReferenceResolver.createInstance();
      sk.tuke.magsa.tools.metamodel.Model root = sk.tuke.magsa.tools.parserext.javacc.Parser.parse();
      referenceResolver.resolveReferences();
      return root;
    } catch (sk.tuke.magsa.tools.parserext.javacc.ParseException e) {
      throw new ParseException("Problem parsing source code ", e);
    }
  }

  public sk.tuke.magsa.tools.metamodel.Model parse(java.io.Reader reader) throws ParseException {
    try {
      return parse(readAsString(reader));
    } catch(java.io.IOException e) {
      throw new ParseException("Problem reading input file", e);
    }
  }

  private String readAsString(java.io.Reader r) throws java.io.IOException {
    StringBuilder sb = new StringBuilder();
    java.io.BufferedReader br = new java.io.BufferedReader(r);
    String line;
    while ((line = br.readLine()) != null) {
      sb.append(line + "\n");
    }
    return sb.toString();
  }
}

Vyskusaj súbor nbproject/project.properties zmenit takto: build.generated.sources.dir=${basedir}/src-framework ... mne to takto ide
Cely navod:

1. v subore magsa/nbproject/project.properties
editovat obsah premennej build.generated.sources.dir na:
    build.generated.sources.dir=${basedir}/src-framework

2. v subore magsa/nbproject/build-impl.xml
editovat riadok 213 a 253 z:
    <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
na
    <attribute default="${build.generated.sources.dir}" name="apgeneratedsrcdir"/>

Nasledne to generuje normalne, ze da ine baliky si netreba vsimat (ide to aj bez toho aby boli spravne napisane).
Tato uprava je potrebna len pre Netbeansy 6.9.1tky
Vdaka jednemu mojmu studentovi za navod :) :thumbs-up:
Dufam ze to kolegovia daju cim skor do cviceni  :banana_guitar:
« Last Edit: 07.04.2011, 16:03:07 by mishelka »
  

#define TRUE FALSE //Happy debugging suckers :D

jim-beam33

  • Jr. Member
  • **
  • Posts: 56
    • View Profile
ja mam Netbeans 6.8 a tiez mi vypisuje chybu s Parserom a po tvojej rade  mi to teraz hadze toto:
D:\štúdium\4.ročník\leto\Modelovanie a gener. softver. architektur\ZADANIE 8,9\magsa\nbproject\build-impl.xml:530: The following error occurred while executing this line:
D:\štúdium\4.ročník\leto\Modelovanie a gener. softver. architektur\ZADANIE 8,9\magsa\nbproject\build-impl.xml:224: Compile failed; see the compiler error output for detail

mishelka

  • Hero Member
  • *****
  • Posts: 4269
  • Bacikova, nie Kreutzova. Bacikova!! :D
    • View Profile
ja mam Netbeans 6.8 a tiez mi vypisuje chybu s Parserom a po tvojej rade  mi to teraz hadze toto:
D:\štúdium\4.ročník\leto\Modelovanie a gener. softver. architektur\ZADANIE 8,9\magsa\nbproject\build-impl.xml:530: The following error occurred while executing this line:
D:\štúdium\4.ročník\leto\Modelovanie a gener. softver. architektur\ZADANIE 8,9\magsa\nbproject\build-impl.xml:224: Compile failed; see the compiler error output for detail
tak toto je velavravna chyba :))) musela by som vidiet
  

#define TRUE FALSE //Happy debugging suckers :D

jan

  • Jr. Member
  • **
  • Posts: 59
    • View Profile
    • skolska stranka
robit 11. cvicenie je vzrusujuce ako prechadzka Jurskym parkom. Taky kratky popis ulohy prinuti kodu skutocne porozumiet, len to zaberie vela casu  :)
- Understanding is a three edged sword. (Your side, their side, and the truth) [Vorlons' saying]
(thanks to Agamemnon)

gabikke

  • Newbie
  • *
  • Posts: 37
    • View Profile
Ma niekto prednasky z tohto predmetu? dakujem

jim-beam33

  • Jr. Member
  • **
  • Posts: 56
    • View Profile
toto mi to vygenerovalo po 8. cviceni

z chybami:
-----------
- package sk.tuke.magsa.tools.parserext.javacc does not exist
- can not find symbol ParseException

Code: [Select]
package sk.tuke.magsa.tools.parserext;

public class Parser {
  private static sk.tuke.magsa.tools.parserext.javacc.Parser _parser;

  public sk.tuke.magsa.tools.metamodel.Model parse(String input) throws ParseException {
    sk.tuke.magsa.tools.parserext.javacc.ParserTokenManager tm = new sk.tuke.magsa.tools.parserext.javacc.ParserTokenManager(input);
    if (_parser == null) {
      _parser = new sk.tuke.magsa.tools.parserext.javacc.Parser(tm);
    } else {
      _parser.ReInit(tm);
    }

    try {
      tuke.pargen.ReferenceResolver referenceResolver = tuke.pargen.ReferenceResolver.createInstance();
      sk.tuke.magsa.tools.metamodel.Model root = sk.tuke.magsa.tools.parserext.javacc.Parser.parse();
      referenceResolver.resolveReferences();
      return root;
    } catch (sk.tuke.magsa.tools.parserext.javacc.ParseException e) {
      throw new ParseException("Problem parsing source code ", e);
    }
  }

  public sk.tuke.magsa.tools.metamodel.Model parse(java.io.Reader reader) throws ParseException {
    try {
      return parse(readAsString(reader));
    } catch(java.io.IOException e) {
      throw new ParseException("Problem reading input file", e);
    }
  }

  private String readAsString(java.io.Reader r) throws java.io.IOException {
    StringBuilder sb = new StringBuilder();
    java.io.BufferedReader br = new java.io.BufferedReader(r);
    String line;
    while ((line = br.readLine()) != null) {
      sb.append(line + "\n");
    }
    return sb.toString();
  }
}

Vyskusaj súbor nbproject/project.properties zmenit takto: build.generated.sources.dir=${basedir}/src-framework ... mne to takto ide
Cely navod:

1. v subore magsa/nbproject/project.properties
editovat obsah premennej build.generated.sources.dir na:
    build.generated.sources.dir=${basedir}/src-framework

2. v subore magsa/nbproject/build-impl.xml
editovat riadok 213 a 253 z:
    <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
na
    <attribute default="${build.generated.sources.dir}" name="apgeneratedsrcdir"/>

Nasledne to generuje normalne, ze da ine baliky si netreba vsimat (ide to aj bez toho aby boli spravne napisane).
Tato uprava je potrebna len pre Netbeansy 6.9.1tky
Vdaka jednemu mojmu studentovi za navod :) :thumbs-up:
Dufam ze to kolegovia daju cim skor do cviceni  :banana_guitar:

Nema niekto problem po tomto navode s tym ze mu to zacne podciarkovat vsetky baliky magse???? :buttrock: :buttrock: v

Dulus

  • Full Member
  • ***
  • Posts: 199
  • Electro Addict
    • View Profile
No ja s tym mam taky problem tiez, mi vypisuje mi teda ze balik sk.tuke.magsa.... atd atd ako neplatny a vraj platny je tuke.magsa......... plus
Code: [Select]
D:\FEI TUKE\1.rocik ING\MaGSA\zadanie\new\In progress\magsa\src-framework\sk\tuke\magsa\tools\parserext\Parser.java:4: cannot find symbol
symbol  : class Parser
location: package sk.tuke.magsa.tools.parserext.javacc
  private static sk.tuke.magsa.tools.parserext.javacc.Parser _parser;
D:\FEI TUKE\1.rocik ING\MaGSA\zadanie\new\In progress\magsa\src-framework\sk\tuke\magsa\tools\parserext\javacc\ParserTokenManager.java:10: cannot find symbol
symbol: class TokenManager
public class ParserTokenManager implements TokenManager, ParserConstants {
plus dalsie errory velmi podobne teda ze nevie najst symbol parseru ...


Inac na zaciatku suboru nbproject/build-impl.xml je napsiane :D ... esteze to mame menit ... och mama mia komu som co spravil .. asi preto to ide "kazdemu"

*** GENERATED FROM project.xml - DO NOT EDIT  ***
***         EDIT ../build.xml INSTEAD         ***


Este taka vec kedze menime build.generated.sources.dir=${basedir}/src na build.generated.sources.dir=${basedir}/src-framework nie je cirou nahodou potom potrebne aj v package-info.java zmenit className = "sk.tuke.magsa.tools.parserext.Parser" na className = "sk.tuke.magsa.framework.parserext.Parser", ????????
« Last Edit: 18.04.2011, 02:20:12 by Dulus »
Zivot je ako jazda na vytahu.Raz si hore,raz dole.

Indian

  • Jr. Member
  • **
  • Posts: 67
    • View Profile
nestretol sa niekto s podobnou chybou?

Caused by: java.lang.NullPointerException
        at sk.tuke.magsa.tools.metamodel.Entity.addOutgoingReference(Entity.java:38)
        at sk.tuke.magsa.tools.metamodel.Reference.setFrom(Reference.java:25)

vyzera to tak, ze v triede Reference su from a to null

MackoZlesa

  • Jr. Member
  • **
  • Posts: 89
    • View Profile
nestretol sa niekto s podobnou chybou?

Caused by: java.lang.NullPointerException
        at sk.tuke.magsa.tools.metamodel.Entity.addOutgoingReference(Entity.java:38)
        at sk.tuke.magsa.tools.metamodel.Reference.setFrom(Reference.java:25)

vyzera to tak, ze v triede Reference su from a to null

Cauko Mato, my sme sa stretli s takou chybou a tiez nevieme ako na to :D

Indian

  • Jr. Member
  • **
  • Posts: 67
    • View Profile
nazdar, odpisal mi aj cviciaci na mail a zajtra sa nato pozrieme na cviku, tak som zvedavy, co som domotal :))

mircoo

  • Jr. Member
  • **
  • Posts: 79
  • GBU all ...
    • View Profile
nazdar, odpisal mi aj cviciaci na mail a zajtra sa nato pozrieme na cviku, tak som zvedavy, co som domotal :))

cau, pravdepodobne nemas clensku premennu outgoingReferences inicializovanu, ja som mal taku chybu, teda by to malo vyzerat takto:

Code: [Select]
private List<Reference> outgoingReferences = new ArrayList<Reference>();
Praise Him with the strings....

Indian

  • Jr. Member
  • **
  • Posts: 67
    • View Profile
nazdar, odpisal mi aj cviciaci na mail a zajtra sa nato pozrieme na cviku, tak som zvedavy, co som domotal :))

cau, pravdepodobne nemas clensku premennu outgoingReferences inicializovanu, ja som mal taku chybu, teda by to malo vyzerat takto:

Code: [Select]
private List<Reference> outgoingReferences = new ArrayList<Reference>();

dakujem, to ten problem vyriesilo. tusil som, ze to bude nejaka prkotina, na ktoru som zabudol. diky este raz ;)

thom

  • Jr. Member
  • **
  • Posts: 92
    • View Profile
nazdar, odpisal mi aj cviciaci na mail a zajtra sa nato pozrieme na cviku, tak som zvedavy, co som domotal :))
Aj my sme riesili presne rovnaky problem, problem je v triede Main v magsa-generated. Cize ak mate zamestnanca a ten ma vlastnosti :
meno, priezvisko, vek. Tak mu musite v tej triede nastavit vsetky tieto vlastnosti- cize setMeno, setPriezvisko, setVek.Staci, ze jednu vlastnost nenastavite a hadze to "NullPointerException"  :). Takisto treba spravit aj s triedou oddelenie, pripadne dalsimi.

pinderko

  • Full Member
  • ***
  • Posts: 148
    • View Profile
nazdar, odpisal mi aj cviciaci na mail a zajtra sa nato pozrieme na cviku, tak som zvedavy, co som domotal :))
Aj my sme riesili presne rovnaky problem, problem je v triede Main v magsa-generated. Cize ak mate zamestnanca a ten ma vlastnosti :
meno, priezvisko, vek. Tak mu musite v tej triede nastavit vsetky tieto vlastnosti- cize setMeno, setPriezvisko, setVek.Staci, ze jednu vlastnost nenastavite a hadze to "NullPointerException"  :). Takisto treba spravit aj s triedou oddelenie, pripadne dalsimi.
+ nastavit referenciu v zamestnancovi aj na oddelenie {zamestnanec.setOddelenie(cislo alebo oddelenie.setIdent())}

jim-beam33

  • Jr. Member
  • **
  • Posts: 56
    • View Profile
Neviete ako generovat XML v 11.cviku?

qwerty

  • Newbie
  • *
  • Posts: 24
    • View Profile
Neviete ako generovat XML v 11.cviku?
XML sa negeneruje. To si staci len stiahnut http://hornad.fei.tuke.sk/~wassermann/magsa/cvicenia/11/ui.xml a nakopirovat do magsa adresara. Generuje sa len XSD schema pomocou schemagenu...
Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why.

mishelka

  • Hero Member
  • *****
  • Posts: 4269
  • Bacikova, nie Kreutzova. Bacikova!! :D
    • View Profile
 :bananawrite: Nezabudnite ze ui.xml aj ui.xsl musite mat v magsa adresari - mimo src,mimo akykolvek adresar. Ak ho date inde, vypadne vam exception ze nevie najst ui element... :ringsmiley:
 br
« Last Edit: 03.05.2011, 22:37:30 by mishelka »
  

#define TRUE FALSE //Happy debugging suckers :D

qwerty

  • Newbie
  • *
  • Posts: 24
    • View Profile
Rozumiem spravne tomu pouzivatelskemu rozhraniu? Ak mam takto definovany formular pre zamestnanca

Code: [Select]
<form name="ZamestnanecForm" entity="Zamestnanec" label="Zamestnanec">
<field property="priezvisko" />
<field property="meno" />
<field property="vek" />
<lookupField property="nazov" table="OddelenieTable" />
</form>

tak pri operaciach CREATE a EDIT sa od uzivatela bude pozadovat priezvisko,meno,vek zamestnanca plus nazov oddelenia do ktoreho patri?
Lebo ak ano, tak pre dokoncenia zadania je nutne mat vypracovanu doplnujucu ulohu z cvicenia c.9 (vyhladavanie podla lubovolnej entity...)
Alebo to len pri operacii EDIT, a pri CREATE sa budu pozadovat vsetky property zamestnanca a id oddelenia?
Please help, lebo sa do toho nejako zamotavam  bu
Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why.

drtic

  • Full Member
  • ***
  • Posts: 200
    • View Profile
V databaze v tabulke Zamestnanec mas stlpec ident_Oddelenie, cize pri vytvarani a editovani zamestnanca tam potrebujes zadat id zvoleneho oddelenia.

qwerty

  • Newbie
  • *
  • Posts: 24
    • View Profile
V databaze v tabulke Zamestnanec mas stlpec ident_Oddelenie, cize pri vytvarani a editovani zamestnanca tam potrebujes zadat id zvoleneho oddelenia.
...no takto som to mal, ale potom aky vyznam ma element lookupField
Code: [Select]
<lookupField property="nazov" table="OddelenieTable" />lebo takto uzivatel nijak nepouzije vo formulari nazov oddelenia...
Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why.