Re: convention plugin Issue

2019-12-30 Thread zahid
I am currently studying for the 1ZO-815. package name is called is 
namespace.


package mypackge  <--- namespace

public class Main {
    public static void main(String[] args) {
    System.out.println("execute");
    }
}


On 20/12/2019 05:02, John Bush wrote:
I apologize for mistaking overriding method vs class in your 
description. I turned on debugging and it looks that all three classes 
are being found and struts actions are being created. The problem 
appears to be allowing the default process to create those - they get 
created with the same action name [hello-world] and namespace []. 
Struts in that case I believe takes the first encountered just like 
when using a struts.xml file. I don't use the Convention Plugin but I 
would suggest a solution might be to use the @Namespace annotation on 
the class or package. That way you would be able to specify a unique 
SCOPE when calling the action and get the result you need.


John

On 12/19/2019 12:52 AM, Zahid Rahman wrote:

This is not overriding method.



As you see when you declare the same functionality using the
struts.xml Then only that explicitly declared
method will be executed by the struts API [framework] in the
explicitly declared package.class.

Overriding methods in OOP means not using certain declared methods
from inherited classes and super impose on inherited methods by
writing your own methods.
So you use some methods from the inherited class not all [Pick and
choose, adapt]

This is randomly picking up a class by matching the  class names only.
There is no way to match packages names same as stuts.xml due to 
design of

annotation API. So I am suggesting do a match of same class names  [
validation  method in the annotations API ]  and raising an error to the
application developer of presence of duplicate class names.





On Thu, 19 Dec 2019 at 05:59, John Bush  wrote:


Overriding methods *is **a valid feature* in Java and probably all
object oriented languages. I'm confident, even at that lowest level, 
you

wouldn't be able to avoid methods being overridden. Above those layers
of code you have many more layers of code to provide the ability to
communicate with and over web technologies. Again with a high
probability of more methods being overridden. Eventually you get to the
Struts framework which is not flat. It is again layers of code, with
again a high probability of more methods being overridden.

IMHO A developer needs to understand the technology stack used 
including

the order of classpaths searched at execution time. A framework is
intended to help you do a job which implies you know what it's doing.

John

On 12/18/2019 9:48 AM, Lukasz Lenart wrote:

Feel free to register a ticket in JIRA, but this is something low
priority rather.


Regards
Lukasz

sob., 7 gru 2019 o 12:58 Zahid Rahman  
napisał(a):

I think the convention plugin should perform a validation a check for

the

presence of multiple same class names within different
package names. That ambiguity has been shown by my test.
After all it is quite feasible and likely that we could have multiple

same

class names from different package names
from jars which have been placed on the classpath.
We cant have the convention plugin randomly (as shown by my test)
executing random code.

On Sat, 7 Dec 2019 at 10:51, Yasser Zamani 

wrote:

Hi,

I guess that the behavior of defining actions with same name and

namespace
is undefined. I think it's not an issue because Convention Plugin 
has

no

avenue to distinguish between them when you request
http://localhost:8080/hello-world.

Regards.


-Original Message-
From: Zahid Rahman 
Sent: Thursday, December 5, 2019 4:51 PM
To: Struts Users Mailing List 
Subject: convention plugin Issue

Hi,

On this page
https://struts.apache.org/plugins/convention/#setup

if I have  com.example.actions.HelloWorld.java
and
uk.mypackage.actions.HelloWorld.java
with  url http://localhost:8080/hello-world then
uk.mypackage.actions.HelloWorld.java  execute is run.

If I have
uk.example.actions.HelloWorld.java
and
com.example.actions.HelloWorld.java
then  com.example.actions.HelloWorld.java  execute is run.

uk.mypackage.actions.HelloWorld,java overrides the other two.

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org


--
www.backbutton.co.uk
  ¯\_(ツ)_/¯
Lynx  my favourite text browser


-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



Re: convention plugin Issue

2019-12-24 Thread Zahid Rahman
No need to apologise.

The real question is how did I know to conduct that particular test and I
was so sure of the result , even before I did.

Believe me , it wasn't a random test.

I was taught C & Unix by Mr. Dimitri. Over the years I realised the  unix
command he taught me are the most used in software development. The C part
of the language he taught is most relevant to developing tools for software
development.











On Fri, 20 Dec 2019, 05:02 John Bush,  wrote:

> I apologize for mistaking overriding method vs class in your
> description. I turned on debugging and it looks that all three classes
> are being found and struts actions are being created. The problem
> appears to be allowing the default process to create those - they get
> created with the same action name [hello-world] and namespace []. Struts
> in that case I believe takes the first encountered just like when using
> a struts.xml file. I don't use the Convention Plugin but I would suggest
> a solution might be to use the @Namespace annotation on the class or
> package. That way you would be able to specify a unique SCOPE when
> calling the action and get the result you need.
>
> John
>
> On 12/19/2019 12:52 AM, Zahid Rahman wrote:
> > This is not overriding method.
> >
> >  > class="org.apache.struts.helloworld.action.HelloWorldAction"
> > method="execute">
> >
> > As you see when you declare the same functionality using the
> > struts.xml Then only that explicitly declared
> > method will be executed by the struts API [framework] in the
> > explicitly declared package.class.
> >
> > Overriding methods in OOP means not using certain declared methods
> > from inherited classes and super impose on inherited methods by
> > writing your own methods.
> > So you use some methods from the inherited class not all [Pick and
> > choose, adapt]
> >
> > This is randomly picking up a class by matching the  class names only.
> > There is no way to match packages names same as stuts.xml due to design
> of
> > annotation API. So I am suggesting do a match of same class names  [
> > validation  method in the annotations API ]  and raising an error to the
> > application developer of presence of duplicate class names.
> >
> >
> >
> >
> >
> > On Thu, 19 Dec 2019 at 05:59, John Bush  wrote:
> >
> >> Overriding methods *is **a valid feature* in Java and probably all
> >> object oriented languages. I'm confident, even at that lowest level, you
> >> wouldn't be able to avoid methods being overridden. Above those layers
> >> of code you have many more layers of code to provide the ability to
> >> communicate with and over web technologies. Again with a high
> >> probability of more methods being overridden. Eventually you get to the
> >> Struts framework which is not flat. It is again layers of code, with
> >> again a high probability of more methods being overridden.
> >>
> >> IMHO A developer needs to understand the technology stack used including
> >> the order of classpaths searched at execution time. A framework is
> >> intended to help you do a job which implies you know what it's doing.
> >>
> >> John
> >>
> >> On 12/18/2019 9:48 AM, Lukasz Lenart wrote:
> >>> Feel free to register a ticket in JIRA, but this is something low
> >>> priority rather.
> >>>
> >>>
> >>> Regards
> >>> Lukasz
> >>>
> >>> sob., 7 gru 2019 o 12:58 Zahid Rahman 
> napisał(a):
>  I think the convention plugin should perform a validation a check for
> >> the
>  presence of multiple same class names within different
>  package names. That ambiguity has been shown by my test.
>  After all it is quite feasible and likely that we could have multiple
> >> same
>  class names from different package names
>  from jars which have been placed on the classpath.
>  We cant have the convention plugin randomly (as shown by my test)
>  executing random code.
> 
>  On Sat, 7 Dec 2019 at 10:51, Yasser Zamani 
> >> wrote:
> > Hi,
> >
> > I guess that the behavior of defining actions with same name and
> >> namespace
> > is undefined. I think it's not an issue because Convention Plugin has
> >> no
> > avenue to distinguish between them when you request
> > http://localhost:8080/hello-world.
> >
> > Regards.
> >
> >> -Original Message-
> >> From: Zahid Rahman 
> >> Sent: Thursday, December 5, 2019 4:51 PM
> >> To: Struts Users Mailing List 
> >> Subject: convention plugin Issue
> >>
> >> Hi,
> >>
> >> On this page
> >> https://struts.apache.org/plugins/convention/#setup
> >>
> >> if I have  com.example.actions.HelloWorld.java
> >> and
> >> uk.mypackage.actions.HelloWorld.java
> >> with  url http://localhost:8080/hello-world then
> >> uk.mypackage.actions.HelloWorld.java  execute is run.
> >>
> >> If I have
> >> uk.example.actions.HelloWorld.java
> >> and
> >> com.example.actions.HelloWorld.java
> >> then  

Re: convention plugin Issue

2019-12-19 Thread John Bush
I apologize for mistaking overriding method vs class in your 
description. I turned on debugging and it looks that all three classes 
are being found and struts actions are being created. The problem 
appears to be allowing the default process to create those - they get 
created with the same action name [hello-world] and namespace []. Struts 
in that case I believe takes the first encountered just like when using 
a struts.xml file. I don't use the Convention Plugin but I would suggest 
a solution might be to use the @Namespace annotation on the class or 
package. That way you would be able to specify a unique SCOPE when 
calling the action and get the result you need.


John

On 12/19/2019 12:52 AM, Zahid Rahman wrote:

This is not overriding method.



As you see when you declare the same functionality using the
struts.xml Then only that explicitly declared
method will be executed by the struts API [framework] in the
explicitly declared package.class.

Overriding methods in OOP means not using certain declared methods
from inherited classes and super impose on inherited methods by
writing your own methods.
So you use some methods from the inherited class not all [Pick and
choose, adapt]

This is randomly picking up a class by matching the  class names only.
There is no way to match packages names same as stuts.xml due to design of
annotation API. So I am suggesting do a match of same class names  [
validation  method in the annotations API ]  and raising an error to the
application developer of presence of duplicate class names.





On Thu, 19 Dec 2019 at 05:59, John Bush  wrote:


Overriding methods *is **a valid feature* in Java and probably all
object oriented languages. I'm confident, even at that lowest level, you
wouldn't be able to avoid methods being overridden. Above those layers
of code you have many more layers of code to provide the ability to
communicate with and over web technologies. Again with a high
probability of more methods being overridden. Eventually you get to the
Struts framework which is not flat. It is again layers of code, with
again a high probability of more methods being overridden.

IMHO A developer needs to understand the technology stack used including
the order of classpaths searched at execution time. A framework is
intended to help you do a job which implies you know what it's doing.

John

On 12/18/2019 9:48 AM, Lukasz Lenart wrote:

Feel free to register a ticket in JIRA, but this is something low
priority rather.


Regards
Lukasz

sob., 7 gru 2019 o 12:58 Zahid Rahman  napisał(a):

I think the convention plugin should perform a validation a check for

the

presence of multiple same class names within different
package names. That ambiguity has been shown by my test.
After all it is quite feasible and likely that we could have multiple

same

class names from different package names
from jars which have been placed on the classpath.
We cant have the convention plugin randomly (as shown by my test)
executing random code.

On Sat, 7 Dec 2019 at 10:51, Yasser Zamani 

wrote:

Hi,

I guess that the behavior of defining actions with same name and

namespace

is undefined. I think it's not an issue because Convention Plugin has

no

avenue to distinguish between them when you request
http://localhost:8080/hello-world.

Regards.


-Original Message-
From: Zahid Rahman 
Sent: Thursday, December 5, 2019 4:51 PM
To: Struts Users Mailing List 
Subject: convention plugin Issue

Hi,

On this page
https://struts.apache.org/plugins/convention/#setup

if I have  com.example.actions.HelloWorld.java
and
uk.mypackage.actions.HelloWorld.java
with  url http://localhost:8080/hello-world then
uk.mypackage.actions.HelloWorld.java  execute is run.

If I have
uk.example.actions.HelloWorld.java
and
com.example.actions.HelloWorld.java
then  com.example.actions.HelloWorld.java  execute is run.

uk.mypackage.actions.HelloWorld,java overrides the other two.

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



Re: convention plugin Issue

2019-12-18 Thread Zahid Rahman
This is not overriding method.



As you see when you declare the same functionality using the
struts.xml Then only that explicitly declared
method will be executed by the struts API [framework] in the
explicitly declared package.class.

Overriding methods in OOP means not using certain declared methods
from inherited classes and super impose on inherited methods by
writing your own methods.
So you use some methods from the inherited class not all [Pick and
choose, adapt]

This is randomly picking up a class by matching the  class names only.
There is no way to match packages names same as stuts.xml due to design of
annotation API. So I am suggesting do a match of same class names  [
validation  method in the annotations API ]  and raising an error to the
application developer of presence of duplicate class names.





On Thu, 19 Dec 2019 at 05:59, John Bush  wrote:

> Overriding methods *is **a valid feature* in Java and probably all
> object oriented languages. I'm confident, even at that lowest level, you
> wouldn't be able to avoid methods being overridden. Above those layers
> of code you have many more layers of code to provide the ability to
> communicate with and over web technologies. Again with a high
> probability of more methods being overridden. Eventually you get to the
> Struts framework which is not flat. It is again layers of code, with
> again a high probability of more methods being overridden.
>
> IMHO A developer needs to understand the technology stack used including
> the order of classpaths searched at execution time. A framework is
> intended to help you do a job which implies you know what it's doing.
>
> John
>
> On 12/18/2019 9:48 AM, Lukasz Lenart wrote:
> > Feel free to register a ticket in JIRA, but this is something low
> > priority rather.
> >
> >
> > Regards
> > Lukasz
> >
> > sob., 7 gru 2019 o 12:58 Zahid Rahman  napisał(a):
> >> I think the convention plugin should perform a validation a check for
> the
> >> presence of multiple same class names within different
> >> package names. That ambiguity has been shown by my test.
> >> After all it is quite feasible and likely that we could have multiple
> same
> >> class names from different package names
> >> from jars which have been placed on the classpath.
> >> We cant have the convention plugin randomly (as shown by my test)
> >> executing random code.
> >>
> >> On Sat, 7 Dec 2019 at 10:51, Yasser Zamani 
> wrote:
> >>
> >>> Hi,
> >>>
> >>> I guess that the behavior of defining actions with same name and
> namespace
> >>> is undefined. I think it's not an issue because Convention Plugin has
> no
> >>> avenue to distinguish between them when you request
> >>> http://localhost:8080/hello-world.
> >>>
> >>> Regards.
> >>>
>  -Original Message-
>  From: Zahid Rahman 
>  Sent: Thursday, December 5, 2019 4:51 PM
>  To: Struts Users Mailing List 
>  Subject: convention plugin Issue
> 
>  Hi,
> 
>  On this page
>  https://struts.apache.org/plugins/convention/#setup
> 
>  if I have  com.example.actions.HelloWorld.java
>  and
>  uk.mypackage.actions.HelloWorld.java
>  with  url http://localhost:8080/hello-world then
>  uk.mypackage.actions.HelloWorld.java  execute is run.
> 
>  If I have
>  uk.example.actions.HelloWorld.java
>  and
>  com.example.actions.HelloWorld.java
>  then  com.example.actions.HelloWorld.java  execute is run.
> 
>  uk.mypackage.actions.HelloWorld,java overrides the other two.
> > -
> > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> > For additional commands, e-mail: user-h...@struts.apache.org
> >
>


Re: convention plugin Issue

2019-12-18 Thread John Bush
Overriding methods *is **a valid feature* in Java and probably all 
object oriented languages. I'm confident, even at that lowest level, you 
wouldn't be able to avoid methods being overridden. Above those layers 
of code you have many more layers of code to provide the ability to 
communicate with and over web technologies. Again with a high 
probability of more methods being overridden. Eventually you get to the 
Struts framework which is not flat. It is again layers of code, with 
again a high probability of more methods being overridden.


IMHO A developer needs to understand the technology stack used including 
the order of classpaths searched at execution time. A framework is 
intended to help you do a job which implies you know what it's doing.


John

On 12/18/2019 9:48 AM, Lukasz Lenart wrote:

Feel free to register a ticket in JIRA, but this is something low
priority rather.


Regards
Lukasz

sob., 7 gru 2019 o 12:58 Zahid Rahman  napisał(a):

I think the convention plugin should perform a validation a check for the
presence of multiple same class names within different
package names. That ambiguity has been shown by my test.
After all it is quite feasible and likely that we could have multiple same
class names from different package names
from jars which have been placed on the classpath.
We cant have the convention plugin randomly (as shown by my test)
executing random code.

On Sat, 7 Dec 2019 at 10:51, Yasser Zamani  wrote:


Hi,

I guess that the behavior of defining actions with same name and namespace
is undefined. I think it's not an issue because Convention Plugin has no
avenue to distinguish between them when you request
http://localhost:8080/hello-world.

Regards.


-Original Message-
From: Zahid Rahman 
Sent: Thursday, December 5, 2019 4:51 PM
To: Struts Users Mailing List 
Subject: convention plugin Issue

Hi,

On this page
https://struts.apache.org/plugins/convention/#setup

if I have  com.example.actions.HelloWorld.java
and
uk.mypackage.actions.HelloWorld.java
with  url http://localhost:8080/hello-world then
uk.mypackage.actions.HelloWorld.java  execute is run.

If I have
uk.example.actions.HelloWorld.java
and
com.example.actions.HelloWorld.java
then  com.example.actions.HelloWorld.java  execute is run.

uk.mypackage.actions.HelloWorld,java overrides the other two.

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



Re: convention plugin Issue

2019-12-18 Thread Lukasz Lenart
Feel free to register a ticket in JIRA, but this is something low
priority rather.


Regards
Lukasz

sob., 7 gru 2019 o 12:58 Zahid Rahman  napisał(a):
>
> I think the convention plugin should perform a validation a check for the
> presence of multiple same class names within different
> package names. That ambiguity has been shown by my test.
> After all it is quite feasible and likely that we could have multiple same
> class names from different package names
> from jars which have been placed on the classpath.
> We cant have the convention plugin randomly (as shown by my test)
> executing random code.
>
> On Sat, 7 Dec 2019 at 10:51, Yasser Zamani  wrote:
>
> > Hi,
> >
> > I guess that the behavior of defining actions with same name and namespace
> > is undefined. I think it's not an issue because Convention Plugin has no
> > avenue to distinguish between them when you request
> > http://localhost:8080/hello-world.
> >
> > Regards.
> >
> > >-Original Message-
> > >From: Zahid Rahman 
> > >Sent: Thursday, December 5, 2019 4:51 PM
> > >To: Struts Users Mailing List 
> > >Subject: convention plugin Issue
> > >
> > >Hi,
> > >
> > >On this page
> > >https://struts.apache.org/plugins/convention/#setup
> > >
> > >if I have  com.example.actions.HelloWorld.java
> > >and
> > >uk.mypackage.actions.HelloWorld.java
> > >with  url http://localhost:8080/hello-world then
> > >uk.mypackage.actions.HelloWorld.java  execute is run.
> > >
> > >If I have
> > >uk.example.actions.HelloWorld.java
> > >and
> > >com.example.actions.HelloWorld.java
> > >then  com.example.actions.HelloWorld.java  execute is run.
> > >
> > >uk.mypackage.actions.HelloWorld,java overrides the other two.
> >

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



Re: convention plugin Issue

2019-12-07 Thread Zahid Rahman
I think the convention plugin should perform a validation a check for the
presence of multiple same class names within different
package names. That ambiguity has been shown by my test.
After all it is quite feasible and likely that we could have multiple same
class names from different package names
from jars which have been placed on the classpath.
We cant have the convention plugin randomly (as shown by my test)
executing random code.

On Sat, 7 Dec 2019 at 10:51, Yasser Zamani  wrote:

> Hi,
>
> I guess that the behavior of defining actions with same name and namespace
> is undefined. I think it's not an issue because Convention Plugin has no
> avenue to distinguish between them when you request
> http://localhost:8080/hello-world.
>
> Regards.
>
> >-Original Message-
> >From: Zahid Rahman 
> >Sent: Thursday, December 5, 2019 4:51 PM
> >To: Struts Users Mailing List 
> >Subject: convention plugin Issue
> >
> >Hi,
> >
> >On this page
> >https://struts.apache.org/plugins/convention/#setup
> >
> >if I have  com.example.actions.HelloWorld.java
> >and
> >uk.mypackage.actions.HelloWorld.java
> >with  url http://localhost:8080/hello-world then
> >uk.mypackage.actions.HelloWorld.java  execute is run.
> >
> >If I have
> >uk.example.actions.HelloWorld.java
> >and
> >com.example.actions.HelloWorld.java
> >then  com.example.actions.HelloWorld.java  execute is run.
> >
> >uk.mypackage.actions.HelloWorld,java overrides the other two.
>


RE: convention plugin Issue

2019-12-07 Thread Yasser Zamani
Hi,

I guess that the behavior of defining actions with same name and namespace is 
undefined. I think it's not an issue because Convention Plugin has no avenue to 
distinguish between them when you request http://localhost:8080/hello-world.

Regards.

>-Original Message-
>From: Zahid Rahman 
>Sent: Thursday, December 5, 2019 4:51 PM
>To: Struts Users Mailing List 
>Subject: convention plugin Issue
>
>Hi,
>
>On this page
>https://struts.apache.org/plugins/convention/#setup
>
>if I have  com.example.actions.HelloWorld.java
>and
>uk.mypackage.actions.HelloWorld.java
>with  url http://localhost:8080/hello-world then
>uk.mypackage.actions.HelloWorld.java  execute is run.
>
>If I have
>uk.example.actions.HelloWorld.java
>and
>com.example.actions.HelloWorld.java
>then  com.example.actions.HelloWorld.java  execute is run.
>
>uk.mypackage.actions.HelloWorld,java overrides the other two.