Re: Webservice Serializing/Deserializing WOStringKeyMap fails

2006-05-12 Thread Mike Schrag
There must be something specific that you're using that I'm not ...  
My WSDL looks (roughly) the same, except for the definitions of my  
own complex types, and it works fine.  For what it's worth, I don't  
return anything that is of type Map.  In all of my services, I return  
one: a primitive type (String, int, float, boolean), one of my own  
custom objects(i.e. WSPerson), an array of primitive types (String[],  
not NSArray), or an array of my own custom objects (i.e. WSPerson 
[]).  This has been working with no problems for me on 5.3 as long as  
I had the modified Axis client to work around the cookie problem  
(.net worked with it out-of-the-box).


ms

On May 11, 2006, at 11:17 PM, Pierre Frisch wrote:


Hi Mike,

Sorry to disturb you but I dont think it works as mentioned.

I have a WO application that makes heavy use of WebServices (http:// 
www.spearcat.com) and it runs very well under wo 5.2.x however I  
have never managed to get it running with 5.3.x. The main problem  
is the WebServices. the way 5.3 with Axis 1.1 generate wsdl and  
handle WebServices has changed.


We have methods that will typically return a WOKeyMapString. This  
does not work any more. I get an error:


11 May 2006 17:34:55,747 ERROR [WorkerThread 6]:  
MonitorClient.invoke  - invoke() exception

com.webobjects.foundation.NSForwardException for
javax.xml.rpc.ServiceException: Error processing WSDL document:
java.io.IOException: Type {http://schemas.xmlsoap.org/soap/ 
encoding/}Struct is referenced but not defined.

at org.apache.axis.client.Service.initService(Service.java:278)

The generated wsdl has changed and probably not for the better. The  
old one used to be:

?xml version=1.0 encoding=UTF-8?
wsdl:definitions targetNamespace=http://antrax.spearway.com:2440/ 
sPearCat/sPearCatWatchDog.woa/ws/MonitorRequest xmlns=http:// 
schemas.xmlsoap.org/wsdl/ xmlns:apachesoap=http://xml.apache.org/ 
xml-soap xmlns:impl=http://antrax.spearway.com:2440/sPearCat/ 
sPearCatWatchDog.woa/ws/MonitorRequest xmlns:intf=http:// 
antrax.spearway.com:2440/sPearCat/sPearCatWatchDog.woa/ws/ 
MonitorRequest xmlns:soapenc=http://schemas.xmlsoap.org/soap/ 
encoding/ xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/;  
xmlns:wsdlsoap=http://schemas.xmlsoap.org/wsdl/soap/;  
xmlns:xsd=http://www.w3.org/2001/XMLSchema;wsdl:types/

  wsdl:message name=instancesRefuseSessionsResponse
wsdl:part name=instancesRefuseSessionsReturn  
type=soapenc:Struct/

  /wsdl:message
..

The new one starts:
?xml version=1.0 encoding=UTF-8?
wsdl:definitions targetNamespace=http://localhost:2440/sPearCat/ 
sPearCatWatchDog.woa/ws/MonitorRequest xmlns=http:// 
schemas.xmlsoap.org/wsdl/ xmlns:apachesoap=http://xml.apache.org/ 
xml-soap xmlns:impl=http://localhost:2440/sPearCat/ 
sPearCatWatchDog.woa/ws/MonitorRequest xmlns:intf=http:// 
localhost:2440/sPearCat/sPearCatWatchDog.woa/ws/MonitorRequest  
xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/;  
xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/;  
xmlns:wsdlsoap=http://schemas.xmlsoap.org/wsdl/soap/;  
xmlns:xsd=http://www.w3.org/2001/XMLSchema;wsdl:typesschema  
targetNamespace=http://xml.apache.org/xml-soap; xmlns=http:// 
www.w3.org/2001/XMLSchemaimport namespace=http:// 
schemas.xmlsoap.org/soap/encoding//complexType  
name=Mapsequenceelement maxOccurs=unbounded minOccurs=0  
name=itemcomplexTypeallelement name=key  
type=xsd:anyType/element name=value type=xsd:anyType// 
all/complexType/element/sequence/complexType/schema/ 
wsdl:types

  wsdl:message name=instancesStartResponse
wsdl:part name=instancesStartReturn type=soapenc:Struct/
  /wsdl:message



I am no wsdl expert but it looks like the headed is confused why  
does it redefine the Map that is one of the base type.


Thank you

Pierre


On 27-Apr-06, at 3:46 PM, Mike Schrag wrote:

5.3.x and wsdl generation DOES work.  This is actually one of the  
few things that IS on the wikibook :)
http://en.wikibooks.org/wiki/Programming:WebObjects/Web_Services/ 
Web_Service_Provider


Let me know if there is still something that isn't clear after  
this and I'll revise it.


ms

On Apr 27, 2006, at 6:00 PM, Pierre Frisch wrote:


Mike,

Are you working with 5.3.x or 5.2.x? Are you using D2WebServices?  
or do it custom? Does your wsdl generation work?


Pierre

On 27-Apr-06, at 11:45 AM, Mike Schrag wrote:

WO definitely supports non-primitive types with Axis ... We have  
several custom object types that I register with:


  public static void registerType(Class _class, QName _qName) {
WOWebServiceRegistrar.registerFactoriesForClassWithQName(new  
BeanSerializerFactory(_class, _qName), new  
BeanDeserializerFactory(_class, _qName), _class, _qName);

  }

ms

On Apr 27, 2006, at 2:38 PM, Trond Kandal wrote:


Kristof Cossement wrote:

Hey everyone,
I try to create a webservice with one input parameter of type  
WOStringKeyMap.
WOStringKeyMap has a serializer and a deserializer class !  
However exchanging the hash through webservices 

EOModeler on Windows XP problem

2006-05-12 Thread Sigurður Anton Ólafsson










Hi, my name is Siggi.



Im having a problem starting up EOModeler on Windows
XP.



It simply wont open.



Is there a genious out there who can help me figure a way to
fix this?





Best reards,

Siggi Olafsson















Fyrirvari á tölvupósti / e-mail disclaimer
http://www.us.is/page/fyrirvari
 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com

Re: EOModeler on Windows XP problem

2006-05-12 Thread logan . allred

Siggi wrote on 05/12/2006 07:05:24 AM:

 I’m having a problem starting up EOModeler on Windows XP.
 
 It simply won’t open.
 
 Is there a genious out there who can help me
figure a way to fix this?

I'm no genius, but I can give some hints and tips.
First, check the System event logs. EOModeller requires that certain Services
be working, like the Apple Mach Daemon, and the Apple Netname Server. Check
your services control panel to makes sure they are working, and see if
the event logs are showing any errors. Also, check your Task Manager to
make sure you have pbs.exe, WindowServer.exe, nmserver.exe, and machd.exe
running. If any of these are not working properly, none of the Apple apps
will run (EOModeller, WOBuilder, etc.). Usually they fail to launch silently
except sometimes an entry in the System event log.

HTH,
Logan
 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com

Re: seamleass integration with other application

2006-05-12 Thread Ricardo Strausz

Hola PS!

I was not able to find the demo... sorry, it may be too old...
but if you are interested in embedding web contents in your app, you  
MOST read:


http://developer.apple.com/documentation/Cocoa/Conceptual/ 
DisplayWebContent/DisplayWebContent.html


It is really very easy to use.

To learn more on Cocoa/EOF take a look to:

http://wodev.spearway.com/cgi-bin/WebObjects/WODev.woa/wa/Main? 
wikiPage=CocoaEOApplication


Suerte,

Dino

On May 10, 2006, at 6:39 PM, PS ps wrote:


Thanks. Where can I find the demo or any documentation
on the same?

--- Ricardo Strausz [EMAIL PROTECTED] wrote:


There was a demo showing how to do a web-browser
(without writing code)
using the APIs of Cocoa...
this may give you a hint on how to integrate
web-apps into another
desktop-app...

you may also want to give a try to Cocoa Enterprise
Objects
Applications...

HIIH
Dino

On May 10, 2006, at 5:34,
[EMAIL PROTECTED] wrote:


Message: 4
Date: Tue, 9 May 2006 14:47:19 -0700 (PDT)
From: PS ps [EMAIL PROTECTED]
Subject: seamleass integration with other

application

To: WebObjects-List Apple

webobjects-dev@lists.apple.com

Message-ID:



[EMAIL PROTECTED]

Content-Type: text/plain; charset=iso-8859-1

Hi!

What are the different approaches for integrating

a

web object application with other web

based/desktop

based applications(eg iTunes)?

Can we provide the UI component too to other
applications?

Appreciate if someone cud help.

Thanks!!




--
Ricardo Strausz
[EMAIL PROTECTED]
Business Applied C Objects
http://homepage.mac.com/strausz/baco
+5255 5437 8205



___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: WebSphere connection pool and deadlock - HELP!

2006-05-12 Thread David Aspinall


Ok, that doesn't seem to be the issue.  I have been searching the web  
(again) and I have identified 2 possible problem areas.


One: seems there may be a problem with WebSphere connection pools  
prematurely closing when the connection/statement/resultset are all  
in different declared scopes.  Seems odd to me but there were several  
reports where the problem (like mine) went away when the connection/ 
statement/resultset were all declared locally, used and released  
within the same scope.  Unfortunately I do not see a way to make  
WebObjects act this way :


Two: seems there may be a problem with WebSphere connection pools  
where the user (WebObjects) tries to set the autocommit flag (either  
true or false).  Since I know WO does set the connection to  
autocommit false, I am again stuck.


Does this sound familiar to anyone?  Suggestions ... please.

David


On 12-May-06, at 1:48 PM, David Aspinall wrote:

Ok, that doesn't seem to be the issue.  I have been searching the  
web (again) and I have identified 2 possible problem areas.


One: seems there may be a problem with WebSphere connection pools  
prematurely closing when the connection/statement/resultset are all  
in different declared scopes.  Seems odd to me but there were  
several reports where the problem (like mine) went away when the  
connection/statement/resultset were all declared locally, used and  
released within the same scope.  Unfortunately I do not see a way  
to make WebObjects act this way :


Two: seems there may be a problem with WebSphere connection pools  
where the user (WebObjects) tries to set the autocommit flag  
(either true or false).  Since I know WO does set the connection to  
autocommit false, I am again stuck.


Does this sound familiar to anyone?  Suggestions ... please.

David


On 8-May-06, at 4:18 PM, David Aspinall wrote:

I am wondering now if the problem could be the way the  
applications are packaged as an EAR file.  We are currently  
deploying as 5 different applications within websphere, using one  
EAR file to deploy all.  My new understanding suggests that  
websphere allocates only one child JVM for the ear file.  (as  
opposed to deploying them as 5 separate EAR or WAR files, where I  
would get 5 separate JVM's)


Could this be the problem?  Does anyone have any experience with  
this?


David

On 4-May-06, at 1:25 PM, Michael Parlee wrote:



Well you've got me.  I didn't realize that the PoolingJDBCAdapter  
uses its own connection pool.  I guess I might look at that  
source code and try to modify it do a JNDI lookup for a  
connection pool on the app server.  Other than that I don't know  
what to suggest, I can't find anything on the web about WO and  
J2EE connection pools.


The fact that your object store coordinators are deadlocking  
makes me wonder if in using a new object store coordinator for  
each EC you are having issues with related objects being spread  
across multiple object stores.


Sorry, I wish I could be more help.

Mike


On Wednesday, May 03, 2006, at 08:45AM, David Aspinall  
[EMAIL PROTECTED] wrote:



Thanks Michael,

I am not using the PoolingJDBCAdaptor.  The connection is  
configured

in WebSphere and obtained using JNDI.  My raw query tool uses the
following to find the connection

try
{
String contextName = java:comp/env/jdbc/DefaultDataSource;
InitialContext ctx = new InitialContext();
datasource = (DataSource)ctx.lookup( contextName );
connection = datasource.getConnection();
}
catch (NamingException e)
{
Log.Debug( this.getClass().getName() + .findJNDIDatasource
( InitialContext ): Could not find JNDI/JDBC Context for name ' +
contextName + ');
throw e;
}


The problem is not with the raw query tool (in fact the problem  
takes

place without even having used the query tool), the problem is with
the regular EOF access.  When I give each new EOEdtingContext it's
own ObjectStoreCoordinator, then I get a full stack, and a new
connection for each stack.  EOF seems to find the connections  
without
any problem, but it is locking objects in one stack (connection)  
that

I am trying to save in a different stack.  I just cannot see why.
The problem also occurs when I use the session default EC for
everything, so there should only be one stack...

When I kill the connection using EnterpriseManager for SQLServer I
get the following backtrace

[5/3/06 12:49:38:160 BST] 291adf4c SystemErr R [Imports]:  
DEBUG:

com.webobjects.jdbcadaptor.JDBCAdaptorException: DSRA9110E:
Connection is closed.
at  
com.webobjects.jdbcadaptor.JDBCContext.rollbackTransaction

(JDBCContext.java:453)
at  
com.webobjects.eoaccess.EODatabaseContext.rollbackChanges

(EODatabaseContext.java:6607)
at com.webobjects.eoaccess.EODatabaseContext.commitChanges
(EODatabaseContext.java:6483)
at
com.webobjects.eocontrol.EOObjectStoreCoordinator.saveChangesInEdit 
ingCo

ntext(EOObjectStoreCoordinator.java:425)
   

Help on big relationship

2006-05-12 Thread Kieran Kelleher
OK, I've seen how to deal with this in the past somewhere on a WWDC  
video or something, but for the life of me I cannot find the approach  
right now and I am under the crunch to get this done.


I have DataList objects with up to a million related DataRecord  
objects. DataList and DataRecord are related in a many-to-many join.  
Usually a DataRecord belongs to no more than 50 DataLists.


So regular dataList.dataRecords() obviously crashes my app when huge  
amount of data records in the relationship.


Am I understanding correctly in saying that fetching my one DataList  
with a million related DataRecords will create a million faults?


What is the strategy here?

Is it:
- turn off the dataRecords class property visibility (diamond icon)?
- kill the relationship to dataRecords in the DataList entity and  
work with qualifiers, fetchspecs and raw rows to grab dataRecords as  
needed? How does this affect creating relationships  just always  
add the DataList to the DataRecord's dataLists relationship?


Any best practice tips, pointers or links to same would be appreciated.

Regards, Kieran
___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Help on big relationship

2006-05-12 Thread Ken Anderson

Kieran,

First off, I would certainly get rid of the relationship to the  
million rows - very nasty stuff.  I think I could use a little more  
info on exactly what the data records are for and what type of access  
pattern you need before I could make any further recommendations.


Oh - in answer to your question, you will only have a single array  
fault for the million rows until it gets triggered.  Then, you'll  
actually try to load all million rows (so if they actually loaded,  
they would be real, not faults).


Ken

On May 12, 2006, at 4:11 PM, Kieran Kelleher wrote:

OK, I've seen how to deal with this in the past somewhere on a WWDC  
video or something, but for the life of me I cannot find the  
approach right now and I am under the crunch to get this done.


I have DataList objects with up to a million related DataRecord  
objects. DataList and DataRecord are related in a many-to-many  
join. Usually a DataRecord belongs to no more than 50 DataLists.


So regular dataList.dataRecords() obviously crashes my app when  
huge amount of data records in the relationship.


Am I understanding correctly in saying that fetching my one  
DataList with a million related DataRecords will create a million  
faults?


What is the strategy here?

Is it:
- turn off the dataRecords class property visibility (diamond icon)?
- kill the relationship to dataRecords in the DataList entity and  
work with qualifiers, fetchspecs and raw rows to grab dataRecords  
as needed? How does this affect creating relationships  just  
always add the DataList to the DataRecord's dataLists relationship?


Any best practice tips, pointers or links to same would be  
appreciated.


Regards, Kieran
___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/lists% 
40anderhome.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Help on big relationship

2006-05-12 Thread Mike Schrag
Except that he mentioned it's a many-to-many, so I'm guessing there  
is a third entity that is unstated that represents the join class?   
If so, then THAT would get faulted as an array (one huge million  
element array), but if you traverse through those objects to the  
DataRecord (or the DataList the other way, assuming it's not  
flattened), you'd get a million individual faults.  Death by a  
million cuts :)


In one particular case, I have a RawRowList class that supports  
prefetching.  It wraps my raw rows, implements the java.util.List  
interface and hands back real EOs when I need them.  It prefetches  
ahead of me (when you get an Iterator from it) in blocks of 5 or 10  
(or whatever) using.  However, this STILL ends up with a big array of  
raw rows in memory.


ERXBatchingDisplayGroup will do REAL batching for you.  I would kill  
your relationship (that is only going to hurt you), make your own  
fetch spec, and use ERXBatchingDisplayGroup on it.


ms

On May 12, 2006, at 4:22 PM, Ken Anderson wrote:


Kieran,

First off, I would certainly get rid of the relationship to the  
million rows - very nasty stuff.  I think I could use a little more  
info on exactly what the data records are for and what type of  
access pattern you need before I could make any further  
recommendations.


Oh - in answer to your question, you will only have a single array  
fault for the million rows until it gets triggered.  Then, you'll  
actually try to load all million rows (so if they actually loaded,  
they would be real, not faults).


Ken

On May 12, 2006, at 4:11 PM, Kieran Kelleher wrote:

OK, I've seen how to deal with this in the past somewhere on a  
WWDC video or something, but for the life of me I cannot find the  
approach right now and I am under the crunch to get this done.


I have DataList objects with up to a million related DataRecord  
objects. DataList and DataRecord are related in a many-to-many  
join. Usually a DataRecord belongs to no more than 50 DataLists.


So regular dataList.dataRecords() obviously crashes my app when  
huge amount of data records in the relationship.


Am I understanding correctly in saying that fetching my one  
DataList with a million related DataRecords will create a million  
faults?


What is the strategy here?

Is it:
- turn off the dataRecords class property visibility (diamond icon)?
- kill the relationship to dataRecords in the DataList entity and  
work with qualifiers, fetchspecs and raw rows to grab dataRecords  
as needed? How does this affect creating relationships  just  
always add the DataList to the DataRecord's dataLists relationship?


Any best practice tips, pointers or links to same would be  
appreciated.


Regards, Kieran
___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/lists% 
40anderhome.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/mschrag% 
40mdimension.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Help on big relationship

2006-05-12 Thread Mike Schrag
Also look at ERXFetchSpecificationBatchIterator.  I have not directly  
used this one, but the javadoc sounds promising and it was originally  
written by Max Muller, so you're pretty safe with it I think :)


/**
 * The goal of the fetch specification batch iterator is
 * to have the ability to iterate through a fetch specification
 * that might fetch one million enterprise objects. Fetching all
 * of the objects into a singel editing context is prohibitive
 * in the amount of memory needed and in the time taken to
 * process all of the rows. The iterator allows one to iterate
 * through the fetched objects only hydrating those objects need
 * in small bite size pieces. The iterator also allows you to
 * swap out editing contexts between calls to bnextBatch/b,
 * which will allow the garbage collector to collect the old
 * editing context and the previous batch of enterprise objects.
 */

ms

On May 12, 2006, at 4:37 PM, Mike Schrag wrote:

Except that he mentioned it's a many-to-many, so I'm guessing there  
is a third entity that is unstated that represents the join class?   
If so, then THAT would get faulted as an array (one huge million  
element array), but if you traverse through those objects to the  
DataRecord (or the DataList the other way, assuming it's not  
flattened), you'd get a million individual faults.  Death by a  
million cuts :)


In one particular case, I have a RawRowList class that supports  
prefetching.  It wraps my raw rows, implements the java.util.List  
interface and hands back real EOs when I need them.  It prefetches  
ahead of me (when you get an Iterator from it) in blocks of 5 or 10  
(or whatever) using.  However, this STILL ends up with a big array  
of raw rows in memory.


ERXBatchingDisplayGroup will do REAL batching for you.  I would  
kill your relationship (that is only going to hurt you), make your  
own fetch spec, and use ERXBatchingDisplayGroup on it.


ms

On May 12, 2006, at 4:22 PM, Ken Anderson wrote:


Kieran,

First off, I would certainly get rid of the relationship to the  
million rows - very nasty stuff.  I think I could use a little  
more info on exactly what the data records are for and what type  
of access pattern you need before I could make any further  
recommendations.


Oh - in answer to your question, you will only have a single array  
fault for the million rows until it gets triggered.  Then, you'll  
actually try to load all million rows (so if they actually loaded,  
they would be real, not faults).


Ken

On May 12, 2006, at 4:11 PM, Kieran Kelleher wrote:

OK, I've seen how to deal with this in the past somewhere on a  
WWDC video or something, but for the life of me I cannot find the  
approach right now and I am under the crunch to get this done.


I have DataList objects with up to a million related DataRecord  
objects. DataList and DataRecord are related in a many-to-many  
join. Usually a DataRecord belongs to no more than 50 DataLists.


So regular dataList.dataRecords() obviously crashes my app when  
huge amount of data records in the relationship.


Am I understanding correctly in saying that fetching my one  
DataList with a million related DataRecords will create a million  
faults?


What is the strategy here?

Is it:
- turn off the dataRecords class property visibility (diamond icon)?
- kill the relationship to dataRecords in the DataList entity and  
work with qualifiers, fetchspecs and raw rows to grab dataRecords  
as needed? How does this affect creating relationships  just  
always add the DataList to the DataRecord's dataLists relationship?


Any best practice tips, pointers or links to same would be  
appreciated.


Regards, Kieran
___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/lists% 
40anderhome.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/mschrag% 
40mdimension.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/mschrag% 
40mdimension.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:

Re: Sample code wanted...

2006-05-12 Thread Ken Anderson

Randy,

What you've laid out is exactly how I've done it before...but sorry,  
no code samples around.


Ken

On May 12, 2006, at 4:39 PM, Randy Wigginton wrote:

I have an app that involves some LONG operations - literally an  
hour or
more.  In this case, I would like to display a page saying Results  
will be
e-mailed to you, then a new thread should perform the processing,  
then
email a WOComponent page.  Is there anything similar I can use as a  
model?
Hard to believe this is the first time such a thing is needed  
(nothing I

could find on WOCode.com)


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/lists% 
40anderhome.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Sample code wanted...

2006-05-12 Thread Mike Schrag
For the long-running part, look at WOLongResponsePage (I don't have a  
sample handy because I haven't written that up on the wikibook  
yet :) ) if you want to keep them around waiting (an hour, maybe  
not).  If you want to just spin off a thread, it works pretty much  
like you would expect.  You can just make a new thread and do your  
thing.  Obviously if you're touch EOF, all the usual multithreading  
issues apply.  If you want to be completely separate in EO (not lock  
the entire object store for an hour potentially), you will need to  
create your own EOObjectStoreCoordinator in your thread, and create  
EOEditingContexts from that.  It's surprisingly easy to do that  
part.  The annoying part is syncing the two back up later (because  
you're basically the same problem as multiple instances at that  
point).  However, the quick way is that you can make an  
EOFetchSpecification in the original object store set it to refresh  
refetched objects, make its qualifier such that it will pickup your  
modified/inserted objects, and execute it.


For the emailing part:
http://en.wikibooks.org/wiki/Programming:WebObjects/Project_WONDER/ 
Organization/ERJavaMail


ms

On May 12, 2006, at 4:39 PM, Randy Wigginton wrote:

I have an app that involves some LONG operations - literally an  
hour or
more.  In this case, I would like to display a page saying Results  
will be
e-mailed to you, then a new thread should perform the processing,  
then
email a WOComponent page.  Is there anything similar I can use as a  
model?
Hard to believe this is the first time such a thing is needed  
(nothing I

could find on WOCode.com)


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/mschrag% 
40mdimension.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Sample code wanted...

2006-05-12 Thread Ken Anderson

Nice point Mike.

Also Randy, please don't reply to old messages to start new threads -  
it's very annoying for people who organize by thread, or the html  
versions of the mailing list.


Ken

On May 12, 2006, at 4:47 PM, Mike Schrag wrote:

For the long-running part, look at WOLongResponsePage (I don't have  
a sample handy because I haven't written that up on the wikibook  
yet :) ) if you want to keep them around waiting (an hour, maybe  
not).  If you want to just spin off a thread, it works pretty much  
like you would expect.  You can just make a new thread and do your  
thing.  Obviously if you're touch EOF, all the usual multithreading  
issues apply.  If you want to be completely separate in EO (not  
lock the entire object store for an hour potentially), you will  
need to create your own EOObjectStoreCoordinator in your thread,  
and create EOEditingContexts from that.  It's surprisingly easy to  
do that part.  The annoying part is syncing the two back up later  
(because you're basically the same problem as multiple instances at  
that point).  However, the quick way is that you can make an  
EOFetchSpecification in the original object store set it to refresh  
refetched objects, make its qualifier such that it will pickup your  
modified/inserted objects, and execute it.


For the emailing part:
http://en.wikibooks.org/wiki/Programming:WebObjects/Project_WONDER/ 
Organization/ERJavaMail


ms

On May 12, 2006, at 4:39 PM, Randy Wigginton wrote:

I have an app that involves some LONG operations - literally an  
hour or
more.  In this case, I would like to display a page saying  
Results will be
e-mailed to you, then a new thread should perform the processing,  
then
email a WOComponent page.  Is there anything similar I can use as  
a model?
Hard to believe this is the first time such a thing is needed  
(nothing I

could find on WOCode.com)


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/mschrag% 
40mdimension.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/lists% 
40anderhome.com


This email sent to [EMAIL PROTECTED]


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Sample code wanted...

2006-05-12 Thread Pierce T. Wetter III


On May 12, 2006, at 1:39 PM, Randy Wigginton wrote:

I have an app that involves some LONG operations - literally an  
hour or
more.  In this case, I would like to display a page saying Results  
will be
e-mailed to you, then a new thread should perform the processing,  
then
email a WOComponent page.  Is there anything similar I can use as a  
model?
Hard to believe this is the first time such a thing is needed  
(nothing I

could find on WOCode.com)


 You basically have the idea, I think the thing you're missing is this:

  component= pageWithName(BigAssPage)
  response=component.generateResponse()

 As others have pointed out though, you'll probably want to setup a  
separate database context, etc. or you'll end up locking everyone out  
of the database for an hour.


 Pierce
___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Sample code wanted...

2006-05-12 Thread Ken Anderson
The In-Reply-To header is included.	From: 	  [EMAIL PROTECTED]	Subject: 	Help on big relationship	Date: 	May 12, 2006 4:11:15 PM EDT	To: 	  webobjects-dev@lists.apple.com	Message-Id: 	[EMAIL PROTECTED]	From: 	  [EMAIL PROTECTED]	Subject: 	Sample code wanted...	Date: 	May 12, 2006 4:39:32 PM EDT	To: 	  webobjects-dev@lists.apple.com	In-Reply-To: 	[EMAIL PROTECTED]KenOn May 12, 2006, at 5:02 PM, Randy Wigginton wrote:Why?  What header is copied?  Its just an easy way to do a new to an emailaddy that I don't memorize.-Original Message-From: webobjects-dev-bounces+cawineguy=[EMAIL PROTECTED][mailto:webobjects-dev-bounces+cawineguy=[EMAIL PROTECTED]] OnBehalf Of Ken AndersonSent: Friday, May 12, 2006 4:52 PMTo: Mike SchragCc: WebObjects DevelopmentSubject: Re: Sample code wanted...Nice point Mike.Also Randy, please don't reply to old messages to start new threads -  it's very annoying for people who organize by thread, or the html  versions of the mailing list.KenOn May 12, 2006, at 4:47 PM, Mike Schrag wrote: For the long-running part, look at WOLongResponsePage (I don't have  a sample handy because I haven't written that up on the wikibook  yet :) ) if you want to keep them around waiting (an hour, maybe  not).  If you want to just spin off a thread, it works pretty much  like you would expect.  You can just make a new thread and do your  thing.  Obviously if you're touch EOF, all the usual multithreading  issues apply.  If you want to be completely separate in EO (not  lock the entire object store for an hour potentially), you will  need to create your own EOObjectStoreCoordinator in your thread,  and create EOEditingContexts from that.  It's surprisingly easy to  do that part.  The annoying part is syncing the two back up later  (because you're basically the same problem as multiple instances at  that point).  However, the quick way is that you can make an  EOFetchSpecification in the original object store set it to refresh  refetched objects, make its qualifier such that it will pickup your  modified/inserted objects, and execute it.For the emailing part:http://en.wikibooks.org/wiki/Programming:WebObjects/Project_WONDER/ Organization/ERJavaMailmsOn May 12, 2006, at 4:39 PM, Randy Wigginton wrote: I have an app that involves some LONG operations - literally an  hour ormore.  In this case, I would like to display a page saying  "Results will bee-mailed to you", then a new thread should perform the processing,  thenemail a WOComponent page.  Is there anything similar I can use as  a model?Hard to believe this is the first time such a thing is needed  (nothing Icould find on WOCode.com) ___Do not post admin requests to the list. They will be ignored.Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)Help/Unsubscribe/Update your Subscription:http://lists.apple.com/mailman/options/webobjects-dev/mschrag% 40mdimension.comThis email sent to [EMAIL PROTECTED] ___Do not post admin requests to the list. They will be ignored.Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)Help/Unsubscribe/Update your Subscription:http://lists.apple.com/mailman/options/webobjects-dev/lists% 40anderhome.comThis email sent to [EMAIL PROTECTED]  ___Do not post admin requests to the list. They will be ignored.Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)Help/Unsubscribe/Update your Subscription:http://lists.apple.com/mailman/options/webobjects-dev/cawineguy%40gmail.comThis email sent to [EMAIL PROTECTED]  ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com

Re: Help on big relationship

2006-05-12 Thread Wolfram Stebel
Am 12.05.2006 22:11 Uhr schrieb Kieran Kelleher unter
[EMAIL PROTECTED]:

 OK, I've seen how to deal with this in the past somewhere on a WWDC
 video or something, but for the life of me I cannot find the approach
 right now and I am under the crunch to get this done.
 
 I have DataList objects with up to a million related DataRecord
 objects. DataList and DataRecord are related in a many-to-many join.
 Usually a DataRecord belongs to no more than 50 DataLists.
 
 So regular dataList.dataRecords() obviously crashes my app when huge
 amount of data records in the relationship.
 
 Am I understanding correctly in saying that fetching my one DataList
 with a million related DataRecords will create a million faults?
 
 What is the strategy here?
 
 Is it:
 - turn off the dataRecords class property visibility (diamond icon)?
 - kill the relationship to dataRecords in the DataList entity and
 work with qualifiers, fetchspecs and raw rows to grab dataRecords as
 needed? How does this affect creating relationships  just always
 add the DataList to the DataRecord's dataLists relationship?
 
 Any best practice tips, pointers or links to same would be appreciated.
 
Hi Kieran

you already received valuable input to this problem.
But let me try to explain a little different.
Always when you are aware of masses of data, you should never expect
automatisms to be the perfect solution.
This sounds a little of wrong planning. If you know you have masses of data,
there should be some very extraordinary reason to fetch them all at once,
automatically or not. I can't find a reason, while writing this :-) you
wouldn't create a report via EO this way, would you?

Based on your knowledge of quantities start planning another way.

Try to segment your data on secondary attributes so that you never have tons
of data.
I would recommend to use custom fetch specifications for this always, based
on primary criteria and restrictions from user input.
The user should be the limiting entity here. The user is never able to
review millions of datasets, nor to read a report of this size...

As you can see, i have no fast solution for you...

But THINK!

Kind regards


Wolfram


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Help on big relationship

2006-05-12 Thread Guido Neitzer

On 12.05.2006, at 22:37 Uhr, Mike Schrag wrote:

ERXBatchingDisplayGroup will do REAL batching for you.  I would  
kill your relationship (that is only going to hurt you), make your  
own fetch spec, and use ERXBatchingDisplayGroup on it.


Or the ERXFetchSpecificationBatchIterator directly if you don't want  
to have a displayGroup.


cug
___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Re: Help on big relationship

2006-05-12 Thread Guido Neitzer

On 12.05.2006, at 22:41 Uhr, Mike Schrag wrote:

Also look at ERXFetchSpecificationBatchIterator.  I have not  
directly used this one, but the javadoc sounds promising and it was  
originally written by Max Muller, so you're pretty safe with it I  
think :)


;-)

I use it often and it works great. With ERXBatchingDisplayGroup you  
have to a bit careful if you sort on non entity attributes - this may  
crash, depending on the version. Don't know how the current version  
handles it.


cug

___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com


Disrupted Threads in the Mailing List

2006-05-12 Thread Jerry W. Walker

Greetings,

RANT

Ken Anderson has pointed this out a couple times, but I wanted to  
lend strong support to his statement:


...please don't reply to old messages to start new threads - it's  
very annoying for people who organize by thread, or the html versions  
of the mailing list.


When asked why, he offered the following succinct justification:

===
The In-Reply-To header is included.

From: [EMAIL PROTECTED]
Subject:Some important problem
Date:   May 12, 2006 4:11:15 PM EDT
To:   webobjects-dev@lists.apple.com
Message-Id: [EMAIL PROTECTED]

From: [EMAIL PROTECTED]
Subject:A completely new topic
Date:   May 12, 2006 4:39:32 PM EDT
To:   webobjects-dev@lists.apple.com
In-Reply-To:[EMAIL PROTECTED]
===

I don't know whether some mail clients have changed recently to  
include the In-Reply-To header or whether people are replying to  
old threads with new subjects more often now, but I've been seeing a  
lot more mixed threads in the last couple months than I remember  
seeing before that.


I like the In-Reply-To: header, because it allows one to change the  
Subject line to something like Some important problem [SOLVED] and  
have it remain in the thread.


Like Ken, I find it disconcerting to be reading through the messages  
of a thread and find a completely new subject thrown in the middle of  
it. (at least the new author did change the subject which I have been  
accused of failing to do when moving off in tangents, but I digress...).


I find it even more disruptive when I'm looking through the archives  
quickly and find the next message in thread has a new subject,  
leading me to believe that the thread I'm researching has ended when  
it hasn't.


So I'll add my request to Ken's that people please avoid clicking the  
Reply button on their mail clients when they wish to start a new thread.


/RANT

Thanks.

Regards,
Jerry

--
__ Jerry W. Walker,
   WebObjects Developer/Instructor for High Performance Industrial  
Strength Internet Enabled Systems


[EMAIL PROTECTED]
203 278-4085office

___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to archive@mail-archive.com