package org.superbiz.injection.h5jpa;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
@Entity
public class Movie {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
private String director;
private String title;
private int year;
public Movie() {
}
public Movie(String director, String title, int year) {
this.director = director;
this.title = title;
this.year = year;
}
public String getDirector() {
return director;
}
public void setDirector(String director) {
this.director = director;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
}
JPA Hibernate Arquillian
This example shows the persist, remove and creation of an entity with JPA and Hibernate 5 using arquillian for the test.
The Java Persistence API (JPA) is a Java specification for accessing, persisting, and managing data between Java objects / classes and a relational database.
To exemplify the use of JPA, we will persist an Object (Movie) in the database.
Links to the documentation have been added in key parts of the example for the case of doubts and as a way to encourage their reading for details.
Movie
Here we have a class with some details. See the annotation @Entity above the declaration, with it we are saying that this class is an entity (a table in the database). We still have two more annotations above the attribute id, one of them is @Id annotation, it indicates that this attribute is the identifier of the entity and the other annotation @GeneratedValue indicates that the unique identifier value generation of the entity will be managed by the persistence provider.
Movies
Now we have two important things: @PersistenceContext annotation and the EntityManager declaration. The EntityManager is the interface with the core methods of JPA like persist, remove, merge, find and others… We annotate the EntityManager with @PersistenceContext, a persistence context is an entity management where every persistence context associated with a persistence unit, we will create a persistence.xml soon for this.
import jakarta.ejb.Stateful;
import jakarta.persistence.EntityManager;
import jakarta.persistence.PersistenceContext;
import jakarta.persistence.PersistenceContextType;
import jakarta.persistence.Query;
import jakarta.persistence.criteria.*;
import jakarta.persistence.metamodel.EntityType;
import java.util.List;
@Stateful
public class Movies {
@PersistenceContext(unitName = "movie-unit", type = PersistenceContextType.EXTENDED)
private EntityManager entityManager;
public void addMovie(Movie movie) throws Exception {
entityManager.persist(movie);
}
public void deleteMovie(Movie movie) throws Exception {
entityManager.remove(movie);
}
public List<Movie> getMovies() throws Exception {
Query query = entityManager.createQuery("SELECT m from Movie as m");
return query.getResultList();
}
public int count(String field, String searchTerm) {
CriteriaBuilder qb = entityManager.getCriteriaBuilder();
CriteriaQuery<Long> cq = qb.createQuery(Long.class);
Root<Movie> root = cq.from(Movie.class);
EntityType<Movie> type = entityManager.getMetamodel().entity(Movie.class);
cq.select(qb.count(root));
if (field != null && searchTerm != null && !"".equals(field.trim()) && !"".equals(searchTerm.trim())) {
Path<String> path = root.get(type.getDeclaredSingularAttribute(field.trim(), String.class));
Predicate condition = qb.like(path, "%" + searchTerm.trim() + "%");
cq.where(condition);
}
return entityManager.createQuery(cq).getSingleResult().intValue();
}
}
persistence.xml
Here we define which database will persist our movies, and we perform other configurations such as: define a persistence-unit with the name movie-unit, followed by the definition of the JPA provider/implementation (in this case Hibernate 5) and we set some properties for hibernate 5:
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" version="2.0"> <persistence-unit name="movie-unit"> <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> <jta-data-source>movieDatabase</jta-data-source> <non-jta-data-source>movieDatabaseUnmanaged</non-jta-data-source> <class>org.superbiz.injection.h3jpa.Movie</class> <properties> <property name="hibernate.hbm2ddl.auto" value="update"/> <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/> <property name="hibernate.show_sql" value="true"/> <!-- JPA and CDI are linked, enabling JPA to use CDI for its components but CDI can use JPA too. To solve issues with hibernate you need to this property either as system property or persistence unit --> <property name="tomee.jpa.factory.lazy" value="true"/> </properties> </persistence-unit> </persistence>
You always can refer to Datasource configuration documentation for more details.
arquillian.xml
This file provides the configuration the server will have for running the tests.
The property additionalLibs
provide to the server the jar files required for Hibernate 5 as explained in the TomEE and Hibernate documentation.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <arquillian xmlns="http://jboss.org/schema/arquillian" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jboss.org/schema/arquillian http://jboss.org/schema/arquillian/arquillian_1_0.xsd"> <container qualifier="tomee" default="true"> <configuration> <property name="httpPort">-1</property> <property name="ajpPort">-1</property> <property name="stopPort">-1</property> <property name="dir">target/tomee-remote</property> <property name="appWorkingDir">target/arquillian-remote-working-dir</property> <property name="cleanOnStartUp">true</property> <property name="additionalLibs"> <!-- add hibernate 5 need it jars to the server--> mvn:org.hibernate:hibernate-core-jakarta:5.6.8.Final mvn:org.hibernate.common:hibernate-commons-annotations:5.1.2.Final mvn:antlr:antlr:2.7.7 mvn:org.jboss:jandex:2.4.2.Final mvn:org.jboss.logging:jboss-logging:3.3.2.Final mvn:net.bytebuddy:byte-buddy:1.12.8 mvn:com.fasterxml:classmate:1.5.1 </property> </configuration> </container> </arquillian>
MoviesArquillianTest
Now we do a test with the following workflow:
-
Insert a movie.
-
Confirm that a movie was persisted by querying the number of movies from the database.
-
Insert a second movie.
-
Delete the first movie
-
Confirm that the second movie is the only available in the database.
package org.superbiz.injection.h5jpa;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.asset.ClassLoaderAsset;
import org.jboss.shrinkwrap.api.spec.WebArchive;
import org.junit.Test;
import org.junit.runner.RunWith;
import jakarta.ejb.EJB;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
@RunWith(Arquillian.class)
public class MoviesArquillianTest {
@Deployment
public static WebArchive createDeployment() {
return ShrinkWrap.create(WebArchive.class, "test.war")
.addClasses(Movie.class, Movies.class, MoviesArquillianTest.class)
.addAsResource(new ClassLoaderAsset("META-INF/persistence.xml"), "META-INF/persistence.xml");
}
@EJB
private Movies movies;
@Test
public void shouldBeAbleToAddAMovie() throws Exception {
assertNotNull("Verify that the ejb was injected", movies);
//Insert a movie
final Movie movie = new Movie();
movie.setDirector("Michael Bay");
movie.setTitle("Bad Boys");
movie.setYear(1995);
movies.addMovie(movie);
//Count movies
assertEquals(1, movies.count("title", "a"));
//Insert a movie
movies.addMovie(new Movie("David Dobkin", "Wedding Crashers", 2005));
//Get movies
assertEquals(2, movies.getMovies().size());
//Delete
movies.deleteMovie(movie);
//Get movies
assertEquals(2005, movies.getMovies().get(0).getYear());
}
}
Running
To run the example via maven:
Access the project folder:
cd jpa-hibernate-arquillian
And execute:
mvn clean install
Which will generate output similar to the following:
...
INFO [http-nio-56012-exec-3] org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized MyFaces Core has started, it took [2112] ms.
INFO [http-nio-56012-exec-5] org.hibernate.jpa.internal.util.LogHelper.logPersistenceUnitInformation HHH000204: Processing PersistenceUnitInfo [name: movie-unit]
INFO [http-nio-56012-exec-5] org.hibernate.Version.logVersion HHH000412: Hibernate Core {5.4.10.Final}
INFO [http-nio-56012-exec-5] org.hibernate.annotations.common.reflection.java.JavaReflectionManager.<clinit> HCANN000001: Hibernate Commons Annotations {5.1.0.Final}
INFO [http-nio-56012-exec-5] org.hibernate.dialect.Dialect.<init> HHH000400: Using dialect: org.hibernate.dialect.HSQLDialect
INFO [http-nio-56012-exec-5] org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator.initiateService HHH000490: Using JtaPlatform implementation: [org.apache.openejb.hibernate.OpenEJBJtaPlatform2]
Hibernate: create table Movie (id bigint not null, director varchar(255), title varchar(255), year integer not null, primary key (id))
Hibernate: create sequence hibernate_sequence start with 1 increment by 1
INFO [http-nio-56012-exec-5] org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory.createDelegate PersistenceUnit(name=movie-unit, provider=org.hibernate.jpa.HibernatePersistenceProvider) - provider time 4033ms
Hibernate: call next value for hibernate_sequence
Hibernate: insert into Movie (director, title, year, id) values (?, ?, ?, ?)
Hibernate: select count(movie0_.id) as col_0_0_ from Movie movie0_ where movie0_.title like ?
Hibernate: call next value for hibernate_sequence
Hibernate: insert into Movie (director, title, year, id) values (?, ?, ?, ?)
Hibernate: select movie0_.id as id1_0_, movie0_.director as director2_0_, movie0_.title as title3_0_, movie0_.year as year4_0_ from Movie movie0_
Hibernate: delete from Movie where id=?
Hibernate: select movie0_.id as id1_0_, movie0_.director as director2_0_, movie0_.title as title3_0_, movie0_.year as year4_0_ from Movie movie0_
...
INFO [main] org.apache.openejb.assembler.classic.Assembler.doResourceDestruction Closing DataSource: Default Unmanaged JDBC Database
INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Destroying ProtocolHandler ["http-nio-56012"]
Results :
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0


Definition: Complementary Products and Services are those that fit well together.
E.g. Paint and Brushes, Computer Hardware and Software, Travel and Insurance.
These types of products offer an “upsell” opportunity for the business and should be exploited to the full.


Davido's birthday: Chioma and Peruzzi accuse celebrant of lying about real age
- Singer Peruzzi Vibes recently celebrated his label boss Davido as he marked a new age
- The music star, however, teasingly mentioned that only God knows the celebrant’s real age
- Reacting, Davido’s wife-to-be, Chioma, shared a comment in support of Peruzzi’s take on his age
The age of Nigerian singer David Adeleke aka Davido has been a widely contested topic among his fans and supporters, with many often times suggesting that he is older than he claims to be.
Just recently, the music star marked the occasion of turning 27, and among those that once again steered up the doubt about his real age, is Davido Worldwide Music (DMW) artiste, Peruzzi Vibes.
In a congratulatory birthday post shared on Instagram, Peruzzi while celebrating his label boss, mentioned that only God knows his real age.
"Happy birthday baddest!!! Na only God know your real real age Thanks for being a good leader & a brother all the way. I dey with you till 6ft.
Davido’s manager Asa Asika praises singer, calls him hardest worker in the game
PAY ATTENTION: Read best news on Nigeria's #1 news app
PAY ATTENTION: Get your daily relationship tips and advice on Africa Love Aid group
Also reacting to the post, Davido’s wife-to-be and mother of his first son, Chioma Rowland, hilariously noted that her man has claimed to be 27 for three consecutive years.
See a screenshot below:
PAY ATTENTION: NAIJ.com upgrades to Legit.ng: a letter from our Editor-in-Chief Bayo Olupohunda
Meanwhile, Legit.ng previously reported about a video of Davido that surfaced on social media, as the singer celebrated his 27th birthday ceremony. The clip shared by Special Spesh captured the moment the celebrant was taking a dump in the toilet. From indications, he did not lock the door after he had settled to relieve himself.
NAIJ.com (naija.ng) -> Legit.ng We have upgraded to serve you better
Davido’s boy Aloma mocks Richard Mille wristwatch Wizkid gifted manager, calls it fake (screenshot)
Wizkid, Davido, D'banj steal show with amazing performances at Burna Boy's concert | Legit TV


Form a team. We'll show you the basics, where to find parts, and how to put it all together.
Host local races at your school and join forces with other schools for larger competitions.
Submit your team's best lap time with video proof and the code you developed to make it happen. Track your position on the leaderboard.
the Donkey Car. A self-driving car platform with easy to find parts and a strong community. Or use another platform of your choosing.
neural net pilots to drive your car on different tracks. Record vehicle data, crash your car, and try again.
for top spots on the leaderboard. Gain new skills in robot and AI technology.
APR started with a self-driving car meet up group in which I struggled to keep up with the group. I botched soldering jobs and fried arduinos, but met new friends who guided me and made the journey well worth it.
A priceless lesson was learned: pushing yourself when it's uncomfortable is where you find gold.
- Akin Shoyoye, Founder.
The only cost required to participate is $65 per team. This only comes into play when you're team is ready.
Our job is to provide you with quality resources on your journey to be a master builder of robotic cars, foster a community where you make awesome connections and grow. All within a strong league structure.


Selecting query images
The imgs.ai Interface consists of two halves, divided by a toolbar. The upper half shows the query images, the lower half shows the search results. Immediately after logging in, the lower half will show a random selection of images from the current dataset. Query images can be added by selecting images from the lower half and clicking either the "Positive" or "Negative" buttons, or by clicking the "Upload" button and uploading a local file to the server. Query images can be removed by selecting them and clicking the Remove button.
Positive and negative examples
Query images can be defined either as positive or negative examples. Positive examples return similar results, negative examples return dissimilar results. A common use case is to define unwanted results of an initial search as negative examples, thus refining the search (see Examples below).
Inspecting images
Double-clicking an image will open either a full resolution file (in local datasets), or the institutional website that the image is attached to (in live datasets).
Cross-dataset search
On switching datasets, all positive query images will be kept and can thus be used with the new dataset. This allows an infinite, cross-dataset search. Depending on the number of images this can take from a few seconds (for a single image) to several minutes (for 10+) images.
Datasets
The datasets made available through this beta of imgs.ai are intended for research purposes only and are not part of the software. The following datasets can be selected in the beta version:
- Annunciations. An iconographic dataset of annunciation images, scraped from multiple art-historical image archives.
- MoMA. All works in the Museum of Modern Art, New York, collection that are available online. This is a live dataset, images are pulled from the MoMA servers on request, and double-clicking an image opens the MoMA website work page.
- Met. About 180,000 works from the Metropolitan Museum collection, as distributed through the 2020 Kaggle iMet competition.
- Harvard. All objects from Harvard University's Collection of Historical Scientific Instruments that are available online. Clean dataset, with well-photographed, single-object images.
- Rezeption. Contains a large number of derivatives and reproductions of four antique statues: Laocoon group, Boy with Thorn, Farnese Hercules, and Apollo Belvedere. This is a good dataset to see the effects of different embeddings on a search query.
- CelebA. A dataset from computer science featuring about 200,000 aligned portraits of celebrities. We include this dataset as a means to test facial landmark embeddings.
- Rijksmuseum. A selection of about 50,000 images from the Rijksmuseum collection. This is a live dataset, images are pulled from the Rijksmuseum servers on request, and double-clicking an image opens the Rijksmuseum website work page.
Embeddings
imgs.ai utilizes neural network embeddings to find similar images. Out of the box, the system offers four different kinds of embeddings to guide the search but can be easily extended through scripting (in the local version, see Training). Switching between embeddings is computationally cheap and should be used often to improve search results. Please note that not all embeddings are available for every test dataset, depending on the nature of the dataset. For instance, for the Harvard scientific instrument dataset, which consists almost exclusively of inanimate objects, human poses are irrelevant and thus unavailable.
- vgg19. Activations of the first fully connected layer of a VGG-19 neural network pre-trained on ImageNet. Can detect meaningful, high-level semantic and syntactic features of an image.
- pose. Detects the presence, and pose, of human figures in an image. Images are similar if they feature human figures in similar poses.
- face. Detects the identity of people in an image based on facial landmarks.
- raw. Compares images based on raw pixel values: similar images will often be similar in color distribution.
Metrics
If multiple query images are selected, results are influenced by the choice of metric.
- ranking. Selects the nearest neighbors for each query image separately, then ranks them by distance score.
- centroid. Finds the point in vector space in-between all query images. Results will feature images that share aspects of all query images.
Distances
The distance between two points in embedding space, and thus the similarity of the embedded images, can be measured in several ways.
- manhattan distance. The distance between two points measured along axes at right angles. See this article for details.
- angular distance. Also: cosine similarity. See this article for details.
- euclidean distance. Length of the direct line between two points in vector space.
More settings
The number of neighbors to pull for each search, as well as the global image size, can be changed on the Settings page.
Training
User datasets can only be added to the system when it is run locally. We will make imgs.ai available under an open source license soon.
Examples


Welcome to IoT-498!
List of Owners
Add a Device
Owner
Name
Description
Add
Manage Device Simulations


| Clear all | Immortal | Frantic | Sickly |
|---|---|---|---|
| Blue Bindings |
GatekeeperLore Draft Edony Marguerite The Magical Detective Jade Irinka Angel of the Houses of the Sun |
GatecrasherStyle Draft, formerly Sickly Aspect: Specialist Suzy Schwan The Best Friend Laodemus Schwan The Wish-Granting Engine |
Wounded AngelWounded Published in CMWGE core Leonardo de Montreal Nightmares' Angel Eclipse Hayden Sorrows (likely) Lee Scathing (possible) Mourning Iolithae Septimian |
| Orange Knight |
AllegoryAllegorical Draft Sal Caesar The Wriggling Teacher Mrs. Senko The Practical Teacher Leonardo de Montreal Angel of Recovery |
Become SomebodyVisage Published in CMWGE core Seizhi Schwan The Best Friend Billy Sovereign The First Free Dog Nikolai Zakharov |
Star QualityPersona Draft, formerly Frantic Mystic: Knave of Hearts Jasmine Apocynum The Ideologue Natalia Koutolika The Prodigy |
| Green Otherworldly |
Child of the AshVastness Published in CMWGE core Chuubo The Wishing Boy Jasper Irinka The Child of the Sun Mavis Wheeler Hedge the Fang named Unmindful The Anomaly Bašmu Sa'a Lingurth Unicorn named Numinous |
SpiritualDomain Published in CMWGE core Rinley Yatskaya The Troublemaker Eclipse Arikel The Exultant |
Called AwayWanderer Draft Jasper Irinka The Child of the Sun Rinley Yatskaya The Troublemaker |
| Red Storyteller |
Creature of the LightHoly Published in CMWGE core Entropy II The Angel of Fortitude Entropy II The Principal Glass Spider The Headmaster of the Bleak Academy Ill-Made Unicorn named Numinous |
Creature of FableHunter Published in CMWGE core Rinley Yatskaya The Troublemaker John Wicked The Class Rep Mrs. Senko The Practical Teacher The Headmaster of the Bleak Academy Orderic Neustry The Prince of Cats Hedge the Fang named Unmindful The Graveyard Spirit aka The Grief-Yard aka Simon Aluskiy |
Creature of DeliriumTheft Draft, formerly Frantic Emptiness: Alchemist Jasmine Apocynum The Ideologue |
| Yellow Aspect |
Chosen OneAdept Draft, formerly Magical Hero Jade Irinka Angel of the Houses of the Sun |
The AceAspect Published in CMWGE core Natalia Koutolika The Prodigy Melanie Malakh |
Reality SyndromeSealed Published in CMWGE core, formerly Sickly Knight Chuubo The Wishing Boy Glass Spider (alternate) Hayden Sorrows Sal Caesar The Wriggling Teacher Bašmu Iolithae Septimian Hoop Snake named Inexplicable |
| Purple Shepherd |
A Keeper of GardensGardener Published in CMWGE core Entropy II The Angel of Fortitude Arikel The Headmaster of the Bleak Academy Lee Scathing Simon Brambles, Prince of Thorns The Prince of Cats Ugallu |
SentimentalFlore Published in CMWGE core Miramie Mesmer The Dream-Witch Edony Marguerite The Magical Detective Lucy Godsfollow Melanie Malakh |
ImpresarioArchitect Draft, formerly Sickly Storyteller: Self-Made Soun Shounen The Idol Entropy II The Principal |
| Silver Emptiness |
IndomitableMonstrous Draft Zoë Rosewood Ogre-Sensei Mrs. Senko The Practical Teacher |
TroubledEide Draft, formerly Frantic Bindings: Renegade |
AccursedWyrd Published in CMWGE core Miramie Mesmer The Dream-Witch Sesiquer Damien The Empty Child Arikel Lee Scathing (possible) Melanie Malakh Simon Brambles, Prince of Thorns (alternate) Mourning The Graveyard Spirit aka The Grief-Yard aka Simon Aluskiy Ugallu |
| Black Mystic |
PrimordialSymbolic Published in CMWGE core Jasper Irinka The Child of the Sun Zoë Rosewood Ogre-Sensei Lee Scathing Orderic Neustry Simon Brambles, Prince of Thorns Uridimmu The Snake-Tailed Eagle Guardian Bird Many-Voiced Minions |
Prophet Draft Dulcinea de Montreal The Rival |
AwakeningDeepness Draft Entropy II The Principal |
12 arcs were included with the core rulebook of the game. The remaining twelve are in progress, with plans for release in the upcoming Book of Golden Hours; drafts are available on Dr. Moran's blog. Some arcs were reshuffled to new positions during development. All links lead to the most up-to-date publicly available versions of that arc, which in some cases means a version which predates the color shift and shows an out-of-date name. Abilities, balance, and flavor may still change between draft and release.
Jenna Moran's previous work, Nobilis, describes the various categories of Imperators, gods with total dominion over the many aspects of reality. Each Nobilis faction is associated with a set of four Arcs.
Angels work tirelessly to spread grace, enlightenment, and beauty. The touch of Heaven is transformative, self-replicating, invasive, and difficult to bear. It can be salvation, it can elevate mortals to saints, but it can also be cold, inhuman justice. During the High War, angels were forced to fight hardest, as the favored Excrucian targets.
No living characters are officially classified as angels. Jade Irinka was; she's dead.
Some angels argued that Heaven's judgements were unfair, and that there was value in the things they rejected. For this they were cast out, and they dwell to this day in Hell as the devils. Their task is to cherish the unloved and bear witness to those who are utterly alone. They are twisted and jaded by their long association with monstrous, broken, and evil things, but their love is omnipresent and uncondiional.
Leonardo de Montreal is a fallen angel, although he usually doesn't know it. The mystery Hoop Snake, which is named Inexplicable, resembles a devil closely enough to count.
The infinite worlds of the universe hang from an immense ash tree. Moses' brother Aaron threw down his wooden staff before Pharoah's magicians, and it became a snake. The Aaron's Serpents are divinities born from the substance of the World Ash. They are enormous and immensely strong; they are also pacifists, with little ambition beyond enjoying the wonders of Creation.
Chuubo is a Serpent who has taken human form, possibly because enjoying a good ice cream cone is easier with hands. Typhon, which is named Outrage, takes the form of a giant golden snake. Psalida "Sal" Caesar, a tendril of the beast Sa'a Lingurth puppeteering a human body who teaches music at School, is at least superficially snakelike.
The Rule is a dream of the best that humanity can be. Lords of the Rule uphold ideals without truly seeing the crudeness and imperfections of reality.
Entropy II is a Lord of Rule. He has a bad habit of not really looking at whoever he's talking to, instead staring directly at bright lights or up into the sun.
The Game is a wild, reckless expression of everything that tempts humanity. Lords of the Game are chaotic, unpredictable tricksters who hate boundaries and restrictions.
Rinley Yatskaya is born of human parents but classified with the Lords of Games. John Wicked is another but I haven't met him yet.
Magisters of the Wild arise from nothing and impose their own personal laws onto the world around them. The Wild is ultimately introspection - understanding oneself and refusing to let anything else define you.
Zoë Rosewood, King Death, and the Witch of the Far Roofs are all aligned with the Wild.
 They predate the other factions and every other form of life.
Jasper Irinka, though the daughter of an Angel and an Excrucian Warmain, manifests her powers more like a True God than anything else.
If Creation is the words of a sentence, Actuals are the grammar; they are the rules that give reality structure. Paradoxes caused by impossible miracles may pull an Actual into reality to fill the gap, and though they may not intend malice these stranded Actuals are highly dangerous. Their alienness is infectious; when they try to understand their unfamiliar surroundings they fail, as everything they touch or examine is converted into more of themself.
Town is more forgiving a setting, however, and Seizhi and Laodemus Schwan might well find happiness; perhaps even local bully Billy Sovereign can be salvaged.
 They live on a remote mountain range shielded against the strongest powers of divinity and the void both.
Natalia Koutolika is probably closest to being Zu, if anyone is. Soun Shounen might be aligned in that direction as well.
The player characters of a Nobilis campaign are Powers - lesser gods elevated from their mortal origins to serve a particular Imperator, who gifts them power over a single Estate. Multiple Powers serving the same divinity make up a Familia.
A Nobilis PC can be approximately converted to the CMWGE system by representing its attributes as Arcs: Aspect = The Ace, Domain = Spiritual, Persona = Star Quality, Treasure/Flore = Sentimental.
Imperators fought a war against the Excrucians, beings who dwell outside conventional reality. They often appear human, at least to us, but their eye sockets are empty holes showing a starry night sky. In their view, Creation is an affront and an insult to the purity of the void they dwell in.
Deceivers believe the world is a lie and a cage, holding its hapless inhabitants back from truth. They manipulate 'false' reality to their own purposes. They often claim to love the people 'trapped' in reality, but whatever it is about us they love, it is something we would not recognize as ourselves.
Jasmine Apocynum is a young Deceiver who had an epiphany about the nature of truth during a dodgeball game. Iolithae Septimian arose during humanity's Bronze Age. Genseric Dace helped Jenna Moran write the Nobilis rulebook, although she complains it's hard to trust anything he says.
Warmains wish to test the world and preserve the best of it. Their tests are usually brutal, and they do not accept refusal from their targets. Those who fail are generally left alone, which is cold comfort when 'failure' means breaking under the Warmain's torment. Those who survive are 'tempered,' utterly wiped out of reality. Warmains honor their favorite opponents by shedding their previous forms and adopting the faces and mannerisms of those worthy victims.
The Headmaster of the Bleak Academy is a Warmain, although he doesn't conform to the standard arcs. His daughter Mrs. Senko teaches at Town's rival institution, Principal Entropy's school. Orderic Neustry is a hunter who preys on unlucky travellers Outside.
Strategists are fundamentally inimical to reality. They labor under a strict time limit, because they are each dying of their individual weakness the moment they set foot in our world. They compensate with elaborate schemes and strategems, and with the World-Breaker's Hand, a technique which allows them to destroy anything.
Miramie Mesmer is all that remains of Strategist Melanie Malakh, who attempted to destroy Town but shattered into pieces instead.
Mimics are the result when a dead Imperator is resurrected by Excrucian techniques. They are outwardly indistinguishable from the genuine godly article, but the inner core is imperfectly patched together. If revealed, the blasphemy they carry is released to wreak destruction; if not revealed, they operate as agents and spies against Creation.
Leonardo de Montreal studied at the Bleak Academy, an Excrucian institution, and the thing that came back was a Mimic.
 It raged and it would have destroyed everything; only, it shattered, instead.
Maybe it found some reason to love the world.
Maybe their hearts weren’t really in it—not the glass-maker’s, not the witch’s.
Maybe it was just that the dragon was made of glass.
The Horizon campaign is still in early development.
For people who only have access to the 12 core arcs, Dr. Moran suggests the following substitutions:
The Best Friend - Wounded Angel
The Prodigy - Become Somebody
The Child of the Sun - Spiritual (Element: Hope)
The Ideologue - Creature of the Light
The Rival - Primordial
The Horizon campaign is still in early development.
Jade Irinka hasn't got official stats as such, but Chosen One and Gatekeeper are both noted as made for her use.
The Angel of Recovery is an alternate Leonardo build, built to help clarify the function of Allegory, suited for a potential future project, the Age of Innocence, where the Sun never died and most of the tragedies in Town's history were averted or never happened.
Creature of Delirium lines up with Jasmine's established powers and it was briefly considered for the Horizon campaign but she hasn't formally been associated with it yet.


--- layout: post title: Arch Linux kernel soft lockup issues! date: 2014-02-13 11:59:51.000000000 +11:00 type: post published: true status: publish categories: [] tags: - Arch - boot - grub - linux meta: _publicize_pending: '1' _edit_last: '1204261' sharing_disabled: '1' author: login: ajaysusarla email<EMAIL_ADDRESS>display_name: partha first_name: '' last_name: '' ---
Earlier this morning, my laptop (a Lenovo Thinkpad X220) refused to wake up from suspend. And afer a hard reset, my machine refused to boot with the following messages on the console:
BUG: soft lockup = CPU#1 stuck for 22s! [which:604]
hda_codec: rates == 0 (ni=0x10, val=0x0, ovrd=1)
hda_codec: cannot attach PCM stream 0 for codec #0
INFO: rcu_preempt detected stalls on CPUs/tasks: { 0}
Rebooting the machine again didn't help,It was the same error again, but this time around it was systemd and systemd-udev causing the lockup. Pretty clueless and with no access to the interwebs I was at least hoping to get a stack trace of some sort. There were none.
My first (and the most obvious) suspect was the kernel and drivers. I had a quick look at my grub.cfg, part of which is shown here:
menuentry 'Arch Linux Linux, with Linux core repo kernel' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-core repo kernel-true-7cb6bd41-b198-4d1d-8ae4-fc8f169abb00' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod ext2
set root='hd0,gpt3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3 7cb6bd41-b198-4d1d-8ae4-fc8f169abb00
else
search --no-floppy --fs-uuid --set=root 7cb6bd41-b198-4d1d-8ae4-fc8f169abb00
fi
echo 'Loading Linux core repo kernel ...'
linux /boot/vmlinuz-linux root=UUID=7cb6bd41-b198-4d1d-8ae4-fc8f169abb00 ro root=/dev/sda3 ro fastboot splash=silent quiet threadirqs add_efi_memmap pcie_aspm=force i915.i915_enable_rc6=7 i915.i915_enable_fbc=1 i915.lvds_downclock=1 rootfstype=ext4 init=/usr/lib/systemd/systemd
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-linux.img
}
I decided to cut down all the cruft and see if I can get the machine up and running. Switching to the grub command-line, i did the following(remember TAB completion is your friend):
insmod part_gpt
insmod ext2
set root=(hd0,gpt3)
linux /boot/vmlinuz-linux root=/dev/sda3 rootfstype=ext4
initrd /boot/initramfs-linux.img
boot
Thankfully, That worked!
With my machine back in action. The next step was to look through the kernel docs. And I found this about soft lockups:
A 'softlockup' is defined as a bug that causes the kernel to loop in
kernel mode for more than 20 seconds (see "Implementation" below for
details), without giving other tasks a chance to run.
More about it here. There is even a command line parameter, softlockup_panic (search for it in kernel parameters doc) that will help generate the much needed stack trace.
This problem is clearly system specific. Some combination of the kernel alongwith drivers and/or firmware messes around with usage of the cpu. In my case it is one of the following parameters:
* threadirqs * add_efi_memmap * pcie_aspm=force * i915 and family
I had a personal committment to get to, so didn't probe this issue any further, will get to it during the weekend. For now, I thought I should share it, in case someone else might find this information helpful and also has some pointers on what caused the problem.
I am currently running 3.13.2-1-ARCH kernel and xf86-video-intel 2.99.910-1 drivers. The machine has an Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz and the following PCI hardware:
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) 00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) 00:16.3 Serial controller: Intel Corporation 6 Series/C200 Series Chipset Family KT Controller (rev 04) 00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04) 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 04) 00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 04) 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b4) 00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b4) 00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b4) 00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b4) 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 04) 00:1f.0 ISA bridge: Intel Corporation QM67 Express Chipset Family LPC Controller (rev 04) 00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 04) 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 04) 03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 [Taylor Peak] (rev 34) 0d:00.0 System peripheral: Ricoh Co Ltd MMC/SD Host Controller (rev 07)


Guidance
Ofsted inspects local authority arrangements for supporting improvement in schools.
An inspection will normally last for 2 weeks.
The lead inspector will usually inform the local authority’s director of children’s services (DCS) 5 working days before the start of the on-site inspection.
If the DCS (or their equivalent) is unavailable, the lead inspector will ask to speak to the most senior officer available with responsibility for school improvement.
The lead inspector will discuss the inspection process with the local authority. They will ask for meetings to be arranged with key personnel during the on-site visit in the inspection’s second week. The lead inspector will also ask for information to be available to the inspection team at the start of the on-site inspection, for example a summary of the authority’s self-evaluation (if available) and contextual background.
A focused inspection of a number of individual schools will inform the inspection of your local authority.
A separate telephone survey of schools and academies within the local authority area that are not under inspection will also be used to gather evidence.
The lead inspector will meet briefly with the chief executive and/or DCS at the beginning of the inspection to confirm arrangements.
Inspectors must spend as much time as possible gathering evidence.
Meetings must be held with elected members, senior and operational staff, school-based staff and governors and other stakeholders.
The lead inspector should meet the DCS or their equivalent throughout the inspection to:
At the end of the inspection, there must be a brief feedback meeting that includes, where possible, the DCS or their equivalent, the lead elected member and chief executive.
Inspectors will share and clarify the main inspection findings and outline how the local authority can improve further.
The inspection report will be sent to the DCS or their equivalent shortly after the end of the inspection, with 5 working days for comments on its factual accuracy.
The local authority will then receive an electronic version of the final report, usually within 28 working days of the end of the inspection.
This should be sent to stakeholders within 5 working days.
The report will be published online .
Any complaints about an inspection should be raised immediately with the lead inspector.
For issues that can’t be resolved during the inspection, you can raise a formal complaint with Ofsted .
Published: 3 December 2014
Updated: 22 September 2015


Afghanistan to release Taliban fighters in prisoner swap
President Ghani says three high-ranking fighters to be freed in exchange for American and Australian kidnapped in 2016.
The Afghan government will release three high-ranking Taliban figures in exchange for American and Australian professors kidnapped nearly three years ago, President Ashraf Ghani's office announced on Tuesday.
The two men - an American identified as Kevin King and an Australian identified as Timothy Weekes - were abducted from the capital, Kabul, outside the American University in 2016.
"We have decided to conditionally release three Taliban prisoners who were arrested outside the country with the help of our international partners and have been in Bagram prison in the custody of the Afghan government for some time," the Afghan president said.
More:
Ghani said at a press event broadcast live on state television that the release of the Taliban fighters linked to the notorious Haqqani Network was a hard decision made in the "interest of the Afghan people".
'Conditional' release
The Afghan president said that the three Taliban leaders - Anas Haqqani, Haji Mali Khan and Hafiz Rashid - are being released "conditionally in exchange" for the two professors.
Anas Haqqani, whose older brother is the deputy Taliban leader and head of the Haqqani Network, a Taliban affiliate, was captured in 2014.
Ghani did not specify the fate of the Western hostages and it was not clear when or where they would be freed, but he noted in his speech that "their health has been deteriorating while in the custody of the terrorists".
The Afghan leader added that the release of the two professors would "pave the way" for the start of unofficial direct talks between his government and the Taliban, who long have refused to negotiate with Ghani's administration.
The Taliban, which has been waging an armed rebellion since being toppled from power in a US-led invasion in 2001, has held a series of talks with the United States in the Qatari capital, Doha.
The two sides were on the verge of a peace deal in September when US President Donald Trump called off the talks after an American soldier was killed in Taliban attack.
In August 2016, gunmen wearing military uniforms kidnapped the two professors, who later appeared looking haggard in a Taliban hostage video, with the rebels going on to say that one of the hostages was in poor health.
The elite American University of Afghanistan opened in 2006 and has attracted a number of faculty members from Western countries.
The US and the Australian embassies in Kabul declined to provide immediate comment. American University also did not comment.


The simple Calculator is an web based calulator that is very easy to use to solve simple day to day calculation such as addictional, multipling, dividtion and substraction. This calulator is compatable for all web broswers so feel free to use.
by Mohit chattlani
© all rights reserved


{# Show standard placeholder for broken player avatar images #} {% block head %}{% endblock %}
You can now subscribe to push notifications in your settings.


_Center_Stage_ (PG-13) * 1/2 (out of ****)
The young cast of unknowns in _Center_Stage_ can all dance, which is a very good thing indeed because virtually none of them can act. And that, of course, is a very, very bad thing when action shifts from the dance studios of the American Ballet Academy to the outside lives of a cross-section of students there. Of course, those followed make a diverse group: there's naive good girl Jody (Jennie Garth lookalike Amanda Schull), who rooms with the talented smartass Eva (ZoŽ Saldana) and Maureen (Susan May Pratt), the school's reigning diva; on the male side are All-American good guy Charlie (Sascha Redetsky), Russian good guy Sergei (Olympic figure skating champion Ilia Kulik), and bad boy Cooper (Ethan Stiefel), the American Ballet Company's hot young star.
These characters all intersect and collide in predictable ways as they deal with predictable personal issues. Jody is quietly pursued by Charlie, but she's drawn to Cooper. Maureen slowly crumbles under the pressure of her overbearing mother (Debra Monk) as a premed student (Eion Bailey) aggressively woos her. Eva butts heads with a strict teacher (Donna Murphy) and the pompous head (Peter Gallagher) of the Academy over her attitude. And so on.
It may not sound so bad as described, but that's because I'm recounting the film without any taste of screenwriter Carol Heikennen's dreary dialogue, Nicholas Hytner's overly earnest direction, or the truly putrid performances by these unpromising acting "talents." (Something is clearly amiss when the one character's development of bulimia is met with laughter from the audience.) The one exception is the spunky Saldana, who is the only one to make her character appear to be a real person, let alone one the audience comes to care about. Whenever she's not onscreen or no one is dancing (with the exception of the climactic ballet, which is supposed to be "hip" and "revolutionary" but is actually quite ridiculous), _Center_Stage_ is one trying watch.
Michael Dequina<EMAIL_ADDRESS>|<EMAIL_ADDRESS>|<EMAIL_ADDRESS>|<EMAIL_ADDRESS>Mr. Brown's Movie Site: http://welcome.to/mrbrown CinemaReview Magazine: http://www.CinemaReview.com on ICQ: #25289934 | on AOL Instant Messenger: MrBrown23
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


The time
The <input type="time"> defines
a control for entering a time (no time zone).
Tip: Always add the <label> tag for best accessibility practices!
Example:
Define a single-line time field that a user can enter time into:
<form action="/action_page.php">
<label for="fname">First name: </label>
<input type="time" id="fname" name="fname">
<label for="lname">Last name: </label>
<input type="time" id="lname" name="lname">
<input type="submit" value="Submit">
</form>
If the browser supports it, a time picker pops up when entering the input field.
Note: type="time" is not supported in Safari or Internet Explorer 12 and earlier versions.
Click on the submit button to submit the form.


WordPress Development Assistant
JMU Libraries
-
Export and import WordPress sites from one installation to another.
-
Build and customize WordPress sites as directed.
-
Conduct quality assurance measures to ensure accuracy and completeness.
-
Learn about and follow JMU Libraries and CampusPress specific work procedures.
-
Research WordPress plugins, themes, and related technologies.
-
Complete other miscellaneous web design, web content, and project management tasks.
August 2019 - December 2019
Managerial Assistant
Sierra McCray Photography
-
Responsible for increasing sales by organizing and maintaining a visually appealing and functional WordPress site.
-
Promoting customer interest by operating social media acounts and developing efficient SEO strategies.
-
Assisting with managerial duties such as responding to client's inquiries via email as well as maanging financial records and tax documents.
-
Performing as a co-content producer by assisting in phohotgraphy related duties such as capturing and editing photos.
July 2016 - November 2017


Cast members in Saturday Night Live come and go more frequently than the women in the chorus of Feeltwood Mac's 'Dreams' on repeat. Although securing a spot in the cast is a daunting task, keeping it doesn't always guarantee a prominent presence.
Many comedy legends, from Chevy Chase to Bill Murray and from Gilda Radner to Tina Fey made a name for themselves as cast members of the show, but over its 45 years on the air, SNL has one star that, like Rose in Titanic, will never let go. Kenan Thompson's job security has become its own joke.
The All-Timers
The top 50 SNL cast members by their number of seasons
Source: Kaggle, NBC
Women in SNL
While SNL has been the starting ground for the careers of successful female comedians such as Julia Louis-Dreyfus, Amy Poehler, the aforementioned Fey and the Oscar-nominated Kristen Wiig, it has a somewhat problematic history of letting its female cast members share in the glory of their male counterparts. The question "are women funny?" has plagued the comedy world for too many decades, and despite the genuine sense of discovery and support it has provided for some of its female cast members, the numbers show that SNL hasn't given them an equally visible platform.
In fact, you'd have to go all the way to the 13th place to come across the first woman in the list of most frequently featured cast members in weekly episodes. That woman is Vanessa Bayer, and she is followed by Poehler, Wiig and Rachel Dratch - and they are all post-2000s additions to the cast.
TOP 20 SNL CAST MEMBERS, BY NUMBER OF EPISODE APPEARANCES
Here is the full list of the 10 most frequently featured female cast members in the show's entire history, which doesn't include any comediennes from the early, wild, man-centric days of SNL.
Top 10 female SNL cast members, by number of episode appearances


OMERO.figure
OME Users' meeting, Dundee
1st June 2016
Will Moore
Presentation Outline
- Figures
- Design goals
- OMERO.figure app
- Technical
- Demo
Manual Figure Creation
- Export of images as TIFFs
- Decide on which Z sections or projections
- Choose timepoints for movies
- Correct channels and rendering settings
- Make notes in case you need to repeat!
- Import into Illustrator / Photoshop / etc.
- Cropping (same region in multiple images)
- Align into rows / grids
- Add scalebars, labels, ROIs
Important to preserve image quality & integrity
Problems
- SLOW!!!
- Need to know exactly what to export at start
- Loss of Metadata:
- pixel sizes
- channel names
- rendering settings
- Loss of Pixel data:
- Export as 8-bit TIFF
- Resizing images may resample them
- No links between Figure and original images
Figure export scripts
OMERO 4.2 (July 2010) Demo Movie
OMERO.figure Design Goals
- Keep it fast!
- Combine images into figure in OMERO (no export)
- Flexible layout with shortcuts for grids
- Each panel is a fully editable image viewer
- Edits applied to multiple selected images
- Exportable as PDF / TIFF
History of a "side project"
What is OMERO.figure?
- OMERO.web app, same as OMERO.webclient
- Download, put on
$PYTHONPATH
and add to web 'apps'
$ bin/omero config append omero.web.apps '"figure"'
See figure.openmicroscopy.org
Services used by OMERO.figure
Layout
Rendering
Z-index, Time
Labels & Scalebars
Finally...
- Save to OMERO
- Export to PDF / TIFF
- Share url
- Links to images in OMERO
Export as PDF / TIFF
What's next?
- Improve ROI support:
- Load ROIs from OMERO
- Save ROIs back to OMERO
- More shapes (freehand, polygon, label)
- Improved integration with OMERO.webclient
- Embeddable Preview
- Labels from Tags


Friend Finder
Answer a few basic questions. Then find the friend with the greatest compatibility!
Take the Survey


| A.mat | Additive relationship matrix |
| add.diallel.vars | add.diallel.vars |
| adiag1 | Binds arrays corner-to-corner |
| Ad_technow | Genotypic and Phenotypic data from single cross hybrids (Technow et al.,2014) |
| Af_technow | Genotypic and Phenotypic data from single cross hybrids (Technow et al.,2014) |
| anova.mmer | anova form a GLMM fitted with mmer |
| AR1 | Autocorrelation matrix of order 1. |
| ARMA | Autocorrelation Moving average. |
| at | at covariance structure |
| atcg1234 | Letter to number converter |
| A_example | Broad sense heritability calculation. |
| A_gryphon | Gryphon data from the Journal of Animal Ecology |
| A_ige | Data to fit indirect genetic effects. |
| bathy.colors | Generate a sequence of colors for plotting bathymetric data. |
| bbasis | Function for creating B-spline basis functions (Eilers & Marx, 2010) |
| bivariateRun | bivariateRun functionality |
| build.HMM | Build a hybrid marker matrix using parental genotypes from inbred individuals |
| coef.mmer | coef form a GLMM fitted with mmer |
| CS | Compound symmetry matrix |
| cs | customized covariance structure |
| D.mat | Dominance relationship matrix |
| dfToMatrix | data frame to matrix |
| ds | diagonal covariance structure |
| DTi_cornhybrids | Corn crosses and markers |
| DT_augment | DT_augment design example. |
| DT_btdata | Blue Tit Data for a Quantitative Genetic Experiment |
| DT_cornhybrids | Corn crosses and markers |
| DT_cpdata | Genotypic and Phenotypic data for a CP population |
| DT_example | Broad sense heritability calculation. |
| DT_expdesigns | Data for different experimental designs |
| DT_fulldiallel | Full diallel data for corn hybrids |
| DT_gryphon | Gryphon data from the Journal of Animal Ecology |
| DT_h2 | Broad sense heritability calculation. |
| DT_halfdiallel | half diallel data for corn hybrids |
| DT_ige | Data to fit indirect genetic effects. |
| DT_legendre | Simulated data for random regression |
| DT_mohring | Full diallel data for corn hybrids |
| DT_polyploid | Genotypic and Phenotypic data for a potato polyploid population |
| DT_rice | Rice lines dataset |
| DT_sleepstudy | Reaction times in a sleep deprivation study |
| DT_technow | Genotypic and Phenotypic data from single cross hybrids (Technow et al.,2014) |
| DT_wheat | wheat lines dataset |
| DT_yatesoats | Yield of oats in a split-block experiment |
| E.mat | Epistatic relationship matrix |
| EM | Expectation Maximization Algorithm |
| fcm | fixed effect constraint indication matrix |
| fitted.mmer | fitted form a LMM fitted with mmer |
| fixm | fixed indication matrix |
| GTn_rice | Rice lines dataset |
| GT_cornhybrids | Corn crosses and markers |
| GT_cpdata | Genotypic and Phenotypic data for a CP population |
| GT_polyploid | Genotypic and Phenotypic data for a potato polyploid population |
| GT_rice | Rice lines dataset |
| GT_wheat | wheat lines dataset |
| gvs | general variance structure specification |
| GWAS | Genome wide association study analysis |
| GWAS2 | Genome wide association study |
| H.mat | Combined relationship matrix H |
| h2.fun | Obtain heritabilities with three different methods |
| imputev | Imputing a numeric or character vector |
| jet.colors | Generate a sequence of colors alog the jet colormap. |
| LD.decay | Calculation of linkage disequilibrium decay |
| leg | Legendre polynomial matrix |
| list2usmat | list or vector to unstructured matrix |
| manhattan | Creating a manhattan plot |
| map.plot | Creating a genetic map plot |
| Md_technow | Genotypic and Phenotypic data from single cross hybrids (Technow et al.,2014) |
| MEMMA | Multivariate Efficient Mixed Model Association Algorithm |
| Mf_technow | Genotypic and Phenotypic data from single cross hybrids (Technow et al.,2014) |
| mmer | *m*ixed *m*odel *e*quations in *R* |
| mmer2 | *m*ixed *m*odel *e*quations in *R* |
| MP_cpdata | Genotypic and Phenotypic data for a CP population |
| MP_polyploid | Genotypic and Phenotypic data for a potato polyploid population |
| overlay | Overlay Matrix |
| plot.mmer | plot form a LMM plot with mmer |
| predict.mmer | Predict form of a LMM fitted with mmer |
| print.mmer | summary form a GLMM fitted with mmer |
| print.summary.mmer | summary form a GLMM fitted with mmer |
| print.wald.test | Wald Test for Model Coefficients |
| P_gryphon | Gryphon data from the Journal of Animal Ecology |
| randef | extracting random effects |
| residuals.mmer | Residuals form a GLMM fitted with mmer |
| simGECorMat | Create a GE correlation matrix for simulation purposes. |
| sommer | *So*lving *M*ixed *M*odel *E*quations in *R* |
| spl2Da | Two-dimensional penalised tensor-product of marginal B-Spline basis. |
| spl2Db | Two-dimensional penalised tensor-product of marginal B-Spline basis. |
| spl2Dmats | Get Tensor Product Spline Mixed Model Incidence Matrices |
| summary.mmer | summary form a GLMM fitted with mmer |
| tpsmmbwrapper | Get Tensor Product Spline Mixed Model Incidence Matrices |
| transformConstraints | transformConstraints |
| transp | Creating color with transparency |
| uncm | unconstrained indication matrix |
| unsm | unstructured indication matrix |
| us | unstructured covariance structure |
| vpredict | vpredict form of a LMM fitted with mmer |
| vpredict.mmer | vpredict form of a LMM fitted with mmer |
| vs | variance structure specification |
| wald.test | Wald Test for Model Coefficients |


The Python XlsxWriter module is based on the design of the Perl module Excel::Writer::XLSX which in turn is based on an older Perl module called Spreadsheet::WriteExcel.
Spreadsheet::WriteExcel was written to optimise speed and reduce memory usage. However, these design goals meant that it wasn’t easy to implement features that many users requested such as writing formatting and data separately.
As a result XlsxWriter (and Excel::Writer::XLSX) takes a different design approach and holds a lot more data in memory so that it is functionally more flexible.
The effect of this is that XlsxWriter can consume a lot of memory. In addition the extended row and column ranges in Excel 2007+ mean that it is possible to run out of memory creating large files.
Fortunately, this memory usage can be reduced almost completely by using the Workbook() 'constant_memory' property:
workbook = Workbook(filename, {'constant_memory': True})
The optimisation works by flushing each row after a subsequent row is written. In this way the largest amount of data held in memory for a worksheet is the amount of data required to hold a single row of data.
Since each new row flushes the previous row, data must be written in sequential row order when 'constant_memory' mode is on:
# With 'constant_memory' you must write data in row by column order.
for row in range(0, row_max):
for col in range(0, col_max):
worksheet.write(row, col, some_data)
# With 'constant_memory' this would only write the first column of data.
for col in range(0, col_max):
for row in range(0, row_max):
worksheet.write(row, col, some_data)
Another optimisation that is used to reduce memory usage is that cell strings aren’t stored in an Excel structure call “shared strings” and instead are written “in-line”. This is a documented Excel feature that is supported by most spreadsheet applications. One known exception is Apple Numbers for Mac where the string data isn’t displayed.
The trade-off when using 'constant_memory' mode is that you won’t be able to take advantage of any new features that manipulate cell data after it is written. Currently the only such feature is Worksheet Tables.
For larger files 'constant_memory' mode also gives an increase in execution speed, see below.
The performance figures below show execution time and memory usage for worksheets of size N rows x 50 columns with a 50/50 mixture of strings and numbers. The figures are taken from an arbitrary, mid-range, machine. Specific figures will vary from machine to machine but the trends should be the same.
XlsxWriter in normal operation mode: the execution time and memory usage increase more of less linearly with the number of rows:
| Rows | Columns | Time (s) | Memory (bytes) |
|---|---|---|---|
| 200 | 50 | 0.65 | 2050552 |
| 400 | 50 | 1.32 | 4478272 |
| 800 | 50 | 2.64 | 8083072 |
| 1600 | 50 | 5.31 | 17799424 |
| 3200 | 50 | 10.74 | 32218624 |
| 6400 | 50 | 21.63 | 64792576 |
| 12800 | 50 | 43.49 | 128760832 |
XlsxWriter in constant_memory mode: the execution time still increases linearly with the number of rows but the memory usage remains small and constant:
| Rows | Columns | Time (s) | Memory (bytes) |
|---|---|---|---|
| 200 | 50 | 0.35 | 54248 |
| 400 | 50 | 0.69 | 54248 |
| 800 | 50 | 1.36 | 54248 |
| 1600 | 50 | 2.74 | 54248 |
| 3200 | 50 | 5.46 | 54248 |
| 6400 | 50 | 10.99 | 54248 |
| 12800 | 50 | 21.82 | 54248 |
In the constant_memory mode the performance is also increased. There will be further optimisation in both modes in later releases.
These figures were generated using programs in the dev/performance directory of the XlsxWriter source code.


MockServer supports a very high request throughput, however if a higher request per second rate is required it is possible to cluster MockServer so that all nodes share expectations.
Although expectations are clustered, currently there is no support for clustering the MockServer log therefore request verifications will only work against the node that received the request.
To create a MockServer cluster all instances need to:
Each node could be configured as follows (adjusting the port as necessary):
MOCKSERVER_WATCH_INITIALIZATION_JSON=true \
MOCKSERVER_INITIALIZATION_JSON_PATH=mockserverInitialization.json \
MOCKSERVER_PERSIST_EXPECTATIONS=true \
MOCKSERVER_PERSISTED_EXPECTATIONS_PATH=mockserverInitialization.json \
java -jar ~/Downloads/mockserver-netty-{{ site.mockserver_version }}-no-dependencies.jar -serverPort 1080 -logLevel INFO
or
java \
-Dmockserver.watchInitializationJson=true \
-Dmockserver.initializationJsonPath=mockserverInitialization.json \
-Dmockserver.persistExpectations=true \
-Dmockserver.persistedExpectationsPath=mockserverInitialization.json \
-jar ~/Downloads/mockserver-netty-{{ site.mockserver_version }}-no-dependencies.jar -serverPort 1080 -logLevel INFO


This is a puzzle about Animal Crossing: New Horizons, specifically the “capture quotes” (there isn’t an official name for them) that the player character says when they catch a fish, which are specific to the fish species. This is clued by the title and flavortext, which includes “hybridization” a.k.a. “crossing” of “fish”, which are a kind of animal, and “2020” to specify the version.
Each clue references the capture quotes of two fish, which have the same number of letters. Overlap the two fish names and take the matching letter to extract the answer, SEA BREAM, another kind of fish (albeit not one in Animal Crossing).
| This fish has the highest quantity of elements like lead and mercury, which means people who catch it tend to blame somebody else. | “I caught a black bass! The most metal of all fish!” | BLACKBASS |
| “I caught an angelfish! That other fish told me to do it!” | ANGELFISH | |
| It is generally recommended that catchers wear a suitable kind of protective liquid when catching this fish, which is an ideal addition to dessert. | “I caught an ocean sunfish! Good thing I'm wearing ocean sunscreen!” | OCEANSUNFISH |
| “I caught a cherry salmon! It's the perfect topper for a marlin sundae!” | CHERRYSALMON | |
| This fish requires significant room to transport, which means people usually try to catch at least two and transport them together. | “I caught a dace! Hope I have some space!” | DACE |
| “I caught a carp! If I catch another, they can carpool!” | CARP | |
| People who catch this fish say that it symbolizes having opinions that are worthy of consideration and being pretty good at anger management. | “I caught a blue marlin! Listen to this fish. it's got a point.” | BLUEMARLIN |
| “I caught a bitterling! It's mad at me, but only a little.” | BITTERLING | |
| People are often inspired to want to catch additional fish after this one, but with the caveat that none of them should be the same species. | “I caught an oarfish! I hope I catch morefish!” | OARFISH |
| “I caught a piranha! Sure hope it was the only one!” | PIRANHA | |
| No matter which of the terrestrial, aerial, and aquatic forms of this fish you catch, you should always be wary of its mouth. | “I caught a zebra turkeyfish! Land, air, water--make up your mind!” | ZEBRATURKEYFISH |
| “I caught a great white shark! Watch out for its jaws!” | GREATWHITESHARK | |
| Reactions to catching this fish tend to emulate pirates and Barack Obama in a famous meme. | “I caught a gar! Yar! It's a gar! Har har!” | GAR |
| “I caught a dab! Not bad!” | DAB | |
| Catching this fish tends to produce emotions of strong affection, but also, it's worth repeating, selfish possessiveness. | “I caught a moray eel! When you're in love, that's a moray!” | MORAYEEL |
| “I caught a mahi-mahi! It's all mahine-mahine.” | MAHIMAHI |


Action taken on 14 GOF members for cross-border smuggling
BUKIT KAYU HITAM, Nov 23 — Action has been taken against 14 officers and men of the General Operations Force (GOF) for allegedly being involved in corrupt practices regarding cross-border smuggling in the Padang Besar area.
Commander of the Northern Brigade GOF, Senior Assistant Commissioner (SAC) Abdul Ghani Mohammad Ji said eight of them had been dismissed, five were demoted while one faced other forms of action.
“Following the viralling of a video, we have already taken action actually and eight personnel were sacked, five were demoted while one person had to face another form of action.
“So we have received the report on action imposed on the personnel involved...action has been taken and they have also left the force about two weeks ago,” he told reporters on the success of the operation called Op Wawasan Kedah/Perlis, here today.
Inspector-General of Police Tan Sri Abdul Hamid Bador was earlier reported as saying the officers and men suspected of involvement in the activity had been transferred and were not allowed to be reassigned to the General Operations Force. — Bernama


{% extends "base.html" %} {% load static from staticfiles %} {% block pageheader %}
About how many cars are in line?


Rotations in 3D applications are usually represented in one of two ways, Quaternions or Euler angles. Each has its own uses and drawbacks. Unity uses Quaternions internally, but shows values of the equivalent Euler angles in the inspector to make it easy for you to edit.
Euler angles have a simpler representation, that being three angle values for X, Y and Z that are applied sequentially. To apply a Euler rotation to a particular object, each rotation value is applied in turn, as a rotation around its corresponding axis.
Quaternions can be used to represent the orientation or rotation of an object. This representation internally consists of four numbers (referenced in Unity as x, y, z & w) however these numbers don’t represent angles or axes and you never normally need to access them directly. Unless you are particularly interested in delving into the mathematics of Quaternions, you only really need to know that a Quaternion represents a rotation in 3D space and you will never normally need to know or modify the x, y & z properties.
In the same way that a Vector can represent either a position or a direction (where the direction is measured from the origin), a Quaternion can represent either an orientation or a rotation - where the rotation is measured from the rotational “origin” or “Identity”. It because the rotation is measured in this way - from one orientation to another - that a quaternion can’t represent a rotation beyond 180 degrees.
In Unity all Game Object rotations are stored internally as Quaternions, because the benefits outweigh the limitations.
In the Transform Inspector however, we display the rotation using Euler angles, because this is more easily understood and edited. New values entered into the inspector for the rotation of a Game Object are converted “under the hood” into a new Quaternion rotation value for the object.
As a side-effect, it is possible in the inspector to enter a value of, say, X: 0, Y: 365, Z: 0 for a Game Object’s rotation. This is a value that is not possible to represent as a quaternion, so when you hit Play you’ll see that the object’s rotation values change to X: 0, Y: 5, Z: 0 (or thereabouts). This is because the rotation was converted to a Quaternion which does not have the concept of “A full 360-degree rotation plus 5 degrees”, and instead has simply been set to be oriented in the same way as the result of the rotation.
When dealing with handling rotations in your scripts, you should use the Quaternion class and its functions to create and modify rotational values. There are some situations where it is valid to use Euler angles, but you should bear in mind: - You should use the Quaternion Class functions that deal with Euler angles - Retrieving, modifying, and re-applying Euler values from a rotation can cause unintentional side-effects.
Unity’s Quaternion class has a number of functions which allow you to create and manipulate rotations without needing to use Euler angles at all. For example:
Creating:
Manipulating:
However sometimes it’s desirable to use Euler angles in your scripts. In this case it’s important to note that you must keep your angles in variables, and only use them to apply them as Euler angles to your rotation. While it’s possible to retrieve Euler angles from a quaternion, if you retrieve, modify and re-apply, problems will arise.
Here are some examples of mistakes commonly made using a hypothetical example of trying to rotate an object around the X axis at 10 degrees per second. This is what you should avoid:
// rotation scripting mistake #1
// the mistake here is that we are modifying the x value of a quaternion
// this value does not represent an angle, and will not produce desired results
void Update () {
var rot = transform.rotation;
rot.x += Time.deltaTime * 10;
transform.rotation = rot;
}
// rotation scripting mistake #2
// the mistake here is that we are reading, modifying then writing the Euler
// values from a quaternion. Because these values calculated from a Quaternion,
// each new rotation may return very different Euler angles, which may suffer from gimbal lock.
void Update () {
var angles = transform.rotation.eulerAngles;
angles.x += Time.deltaTime * 10;
transform.rotation = Quaternion.Euler(angles);
}
And here is an example of using Euler angles in script correctly:
// rotation scripting with Euler angles correctly.
// here we store our Euler angle in a class variable, and only use it to
// apply it as a Euler angle, but we never rely on reading the Euler back.
float x;
void Update () {
x += Time.deltaTime * 10;
transform.rotation = Quaternion.Euler(x,0,0);
}
Many 3D authoring packages, and indeed Unity’s own internal animation window, allow you to use Euler angles to specify rotations during an animation.
These rotations values can frequently exceed range expressable by quaternions. For example, if an object should rotate 720 degrees in-place, this could be represented by Euler angles X: 0, Y: 720, Z:0. But this is simply not representable by a Quaternion value.
Within Unity’s own animation window, there are options which allow you to specify how the rotation should be interpolated - using Quaternion or Euler interpolation. By specifying Euler interpolation you are telling Unity that you want the full range of motion specified by the angles. With Quaternion rotation however, you are saying you simply want the rotation to end at a particular orientation, and Unity will use Quaternion interpolation and rotate across the shortest distance to get there. See Using Animation Curves for more information on this.
When importing animation from external sources, these files usually contain rotational keyframe animation in Euler format. Unity’s default behaviour is to resample these animations and generate a new Quaternion keyframe for every frame in the animation, in an attempt to avoid any situations where the rotation between keyframes may exceed the Quaternion’s valid range.
For example, imagine two keyframes, 6 frames apart, with values for X as 0 on the first keyframe and 270 on the second keyframe. Without resampling, a quaternion interpolation between these two keyframes would rotate 90 degrees in the opposite direction, because that is the shortest way to get from the first orientation to the second orientation. However by resampling and adding a keyframe on every frame, there are now only 45 degrees between keyframes so the rotation will work correctly.
There are still some situations where - even with resampling - the quaternion representation of the imported animation may not match the original closely enough, For this reason, in Unity 5.3 and onwards there is the option to turn off animation resampling, so that you can instead use the original Euler animation keyframes at runtime. For more information, see Animation Import of Euler Curve Rotations.


Ajax is an acronym for Asynchronous JavaScript and XML, a group of web technologies that enable creation of dynamic and highly responsive web applications. Using Ajax, web applications can retrieve content from the server without interfering with the display on the client. In the Java EE 7 platform, JavaServer Faces technology provides built-in support for Ajax.
Early web applications were created mostly as static web pages. When a static web page is updated by a client, the entire page has to reload to reflect the update. In effect, every update needs a page reload to reflect the change. Repetitive page reloads can result in excessive network access and can impact application performance. Technologies such as Ajax were created to overcome these deficiencies.
This chapter describes using Ajax functionality in JavaServer Faces web applications.
The following topics are addressed here:
Ajax refers to JavaScript and XML, technologies that are widely used for creating dynamic and asynchronous web content. While Ajax is not limited to JavaScript and XML technologies, more often than not they are used together by web applications. The focus of this tutorial is on using JavaScript based Ajax functionality in JavaServer Faces web applications.
JavaScript is a dynamic scripting language for web applications. It allows users to add enhanced functionality to user interfaces and allows web pages to interact with clients asynchronously. JavaScript runs mainly on the client side (as in a browser) and thereby reduces server access by clients.
When a JavaScript function sends an asynchronous request from the client to the server, the server sends back a response that is used to update the page's Document Object Model (DOM). This response is often in the format of an XML document. The term Ajax refers to this interaction between the client and server.
The server response need not be in XML only; it can also be in other formats, such as JSON (see Introduction to JSON and http://www.json.org/
). This tutorial does not focus on the response formats.
Ajax enables asynchronous and partial updating of web applications. Such functionality allows for highly responsive web pages that are rendered in near real time. Ajax-based web applications can access server and process information and can also retrieve data without interfering with the display and rendering of the current web page on a client (such as a browser).
Some of the advantages of using Ajax are as follows:
Form data validation in real time, eliminating the need to submit the form for verification
Enhanced functionality for web pages, such as user name and password prompts
Partial update of the web content, avoiding complete page reloads
Ajax functionality can be added to a JavaServer Faces application in one of the following ways:
Adding the required JavaScript code to an application
Using the built-in Ajax resource library
In earlier releases of the Java EE platform, JavaServer Faces applications provided Ajax functionality by adding the necessary JavaScript to the web page. In the Java EE 7 platform, standard Ajax support is provided by a built-in JavaScript resource library.
With the support of this JavaScript resource library, JavaServer Faces standard UI components, such as buttons, labels, or text fields, can be enabled for Ajax functionality. You can also load this resource library and use its methods directly from within the managed bean code. The next sections of the tutorial describe the use of the built-in Ajax resource library.
In addition, because the JavaServer Faces technology component model can be extended, custom components can be created with Ajax functionality.
The tutorial examples include an Ajax version of the guessnumber
application, ajaxguessnumber
. See The ajaxguessnumber Example Application for more information.
The Ajax specific f:ajax
tag and its attributes are explained in the next sections.
As mentioned in the previous section, JavaServer Faces technology supports Ajax by using a built-in JavaScript resource library that is provided as part of the JavaServer Faces core libraries. This built-in Ajax resource can be used in JavaServer Faces web applications in one of the following ways.
By using the f:ajax
tag along with another standard component in a Facelets application. This method adds Ajax functionality to any UI component without additional coding and configuration.
By using the JavaScript API method jsf.ajax.request()
directly within the Facelets application. This method provides direct access to Ajax methods and allows customized control of component behavior.
The f:ajax
tag is a JavaServer Faces core tag that provides Ajax functionality to any regular UI component when used in conjunction with that component. In the following example, Ajax behavior is added to an input component by including the f:ajax
core tag:
<h:inputText value="#{bean.message}"> <f:ajax /> </h:inputText>
In this example, although Ajax is enabled, the other attributes of the f:ajax
tag are not defined. If an event is not defined, the default action for the component is performed. For the inputText
component, when no event
attribute is specified, the default event is valueChange
. Table 13-1 lists the attributes of the f:ajax
tag and their default actions.
Table 13-1 Attributes of the f:ajax Tag
| Name | Type | Description |
|---|---|---|
|
|
|
A |
|
|
|
A |
|
|
|
A |
|
|
|
A |
|
|
|
The name of the listener method that is called when a |
|
|
|
The name of the JavaScript function that handles UI events. |
|
|
|
The name of the JavaScript function that handles errors. |
|
|
|
A |
The keywords listed in Table 13-2 can be used with the execute
and render
attributes of the f:ajax
tag.
Table 13-2 Execute and Render Keywords
| Keyword | Description |
|---|---|
|
|
All component identifiers |
|
|
The form that encloses the component |
|
|
No component identifiers |
|
|
The element that triggered the request |
Note that when you use the f:ajax
tag in a Facelets page, the JavaScript resource library is loaded implicitly. This resource library can also be loaded explicitly as described in Loading JavaScript as a Resource.
To activate Ajax functionality, the web application must create an Ajax request and send it to the server. The server then processes the request.
The application uses the attributes of the f:ajax
tag listed in Table 13-1 to create the Ajax request. The following sections explain the process of creating and sending an Ajax request using some of these attributes.
|
Note: Behind the scenes, the |
The event
attribute defines the event that triggers the Ajax action. Some of the possible values for this attribute are click
, keyup
, mouseover
, focus
, and blur
.
If not specified, a default event based on the parent component will be applied. The default event is action
for javax.faces.component.ActionSource
components, such as a commandButton
, and valueChange
for javax.faces.component.EditableValueHolder
components, such as inputText
. In the following example, an Ajax tag is associated with the button component, and the event that triggers the Ajax action is a mouse click:
<h:commandButton id="submit" value="Submit"> <f:ajax event="click" /> </h:commandButton> <h:outputText id="result" value="#{userNumberBean.response}" />
|
Note: You may have noticed that the listed events are very similar to JavaScript events. In fact, they are based on JavaScript events, but do not have the |
For a command button, the default event is click
, so you do not actually need to specify event="click"
to obtain the desired behavior.
The execute
attribute defines the component or components to be executed on the server. The component is identified by its id
attribute. You can specify more than one executable component. If more than one component is to be executed, specify a space-delimited list of components.
When a component is executed, it participates in all phases of the request-processing lifecycle except the Render Response phase.
The execute
attribute value can also be a keyword, such as @all
, @none
, @this
, or @form
. The default value is @this
, which refers to the component within which the f:ajax
tag is nested.
The following code specifies that the h:inputText
component with the id
value of userNo
should be executed when the button is clicked:
<h:inputText id="userNo" title="Type a number from 0 to 10:" value="#{userNumberBean.userNumber}"> ... </h:inputText> <h:commandButton id="submit" value="Submit"> <f:ajax event="click" execute="userNo" /> </h:commandButton>
The immediate
attribute indicates whether user inputs are to be processed early in the application lifecycle or later. If the attribute is set to true
, events generated from this component are broadcast during the Apply Request Values phase. Otherwise, the events will be broadcast during the Invoke Application phase.
If not defined, the default value of this attribute is false
.
The listener
attribute refers to a method expression that is executed on the server side in response to an Ajax action on the client. The listener's javax.faces.event.AjaxBehaviorListener.processAjaxBehavior
method is called once during the Invoke Application phase of the lifecycle. In the following code from the reservation
example application (see The reservation Example Application), a listener
attribute is defined by an f:ajax
tag, which refers to a method from the bean:
<f:ajax event="change" render="total" listener="#{reservationBean.calculateTotal}"/>
Whenever either the price or the number of tickets ordered changes, the calculateTotal
method of ReservationBean
recalculates the total cost of the tickets and displays it in the output component named total
.
To monitor ongoing Ajax requests, use the onevent
attribute of the f:ajax
tag. The value of this attribute is the name of a JavaScript function. JavaServer Faces calls the onevent
function at each stage of the processing of an Ajax request: begin, complete, and success.
When calling the JavaScript function assigned to the onevent
property, JavaServer Faces passes a data object to it. The data object contains the properties listed in Table 13-3.
Table 13-3 Properties of the onevent Data Object
| Property | Description |
|---|---|
|
|
The response to the Ajax call in XML format |
|
|
The response to the Ajax call in text format |
|
|
The response to the Ajax call in numeric code |
|
|
The source of the current Ajax event: the DOM element |
|
|
The status of the current Ajax call: |
|
|
The type of the Ajax call: |
By using the status
property of the data object, you can identify the current status of the Ajax request and monitor its progress. In the following example, monitormyajaxevent
is a JavaScript function that monitors the Ajax request sent by the event:
<f:ajax event="click" render="statusmessage" onevent="monitormyajaxevent"/>
JavaServer Faces handles Ajax errors through use of the onerror
attribute of the f:ajax
tag. The value of this attribute is the name of a JavaScript function.
When there is an error in processing a Ajax request, JavaServer Faces calls the defined onerror
JavaScript function and passes a data object to it. The data object contains all the properties available for the onevent
attribute and, in addition, the following properties:
description
errorName
errorMessage
The type
is error
. The status
property of the data object contains one of the valid error values listed in Table 13-4.
Table 13-4 Valid Error Values for the Data Object status Property
| Values | Description |
|---|---|
|
|
No Ajax response from server. |
|
|
One of the valid HTTP errors: |
|
|
The Ajax response is not well formed. |
|
|
The Ajax response contains an |
In the following example, any errors that occurred in processing the Ajax request are handled by the handlemyajaxerror
JavaScript function:
<f:ajax event="click" render="errormessage" onerror="handlemyajaxerror"/>
After the application sends an Ajax request, it is processed on the server side, and a response is sent back to the client. As described earlier, Ajax allows for partial updating of web pages. To enable such partial updating, JavaServer Faces technology allows for partial processing of the view. The handling of the response is defined by the render
attribute of the f:ajax
tag.
Similar to the execute
attribute, the render
attribute defines which sections of the page will be updated. The value of a render
attribute can be one or more component id
values, one of the keywords @this
, @all
, @none
, or @form
, or an EL expression. In the following example, the render
attribute identifies an output component to be displayed when the button component is clicked (the default event for a command button):
<h:commandButton id="submit" value="Submit"> <f:ajax execute="userNo" render="result" /> </h:commandButton> <h:outputText id="result" value="#{userNumberBean.response}" />
|
Note: Behind the scenes, once again the |
An Ajax request varies from other typical JavaServer Faces requests, and its processing is also handled differently by the JavaServer Faces lifecycle.
As described in Partial Processing and Partial Rendering, when an Ajax request is received, the state associated with that request is captured by the javax.faces.context.PartialViewContext
. This object provides access to information such as which components are targeted for processing/rendering. The processPartial
method of PartialViewContext
uses this information to perform partial component tree processing and rendering.
The execute
attribute of the f:ajax
tag identifies which segments of the server-side component tree should be processed. Because components can be uniquely identified in the JavaServer Faces component tree, it is easy to identify and process a single component, a few components, or a whole tree. This is made possible by the visitTree
method of the UIComponent
class. The identified components then run through the JavaServer Faces request lifecycle phases.
Similar to the execute
attribute, the render
attribute identifies which segments of the JavaServer Faces component tree need to be rendered during the render response phase.
During the render response phase, the render
attribute is examined. The identified components are found and asked to render themselves and their children. The components are then packaged up and sent back to the client as a response.
The previous sections describe how to associate a single UI component with Ajax functionality. You can also associate Ajax with more than one component at a time by grouping them together on a page. The following example shows how a number of components can be grouped by using the f:ajax
tag:
<f:ajax> <h:form> <h:inputText id="input1" value="#{user.name}"/> <h:commandButton id="Submit"/> </h:form> </f:ajax>
In the example, neither component is associated with any Ajax event
or render
attributes yet. Therefore, no action will take place in case of user input. You can associate the above components with an event
and a render
attribute as follows:
<f:ajax event="click" render="@all"> <h:form> <h:inputText id="input1" value="#{user.name}"/> <h:commandButton id="Submit"/> </h:form> </f:ajax>
In the updated example, when the user clicks either component, the updated results will be displayed for all components. You can further fine-tune the Ajax action by adding specific events to each of the components, in which case Ajax functionality becomes cumulative. Consider the following example:
<f:ajax event="click" render="@all"> ... <h:commandButton id="Submit"> <f:ajax event="mouseover"/> </h:commandButton> ... </f:ajax>
Now the button component will fire an Ajax action in case of a mouseover
event as well as a mouse-click event.
The JavaScript resource file bundled with JavaServer Faces technology is named jsf.js
and is available in the javax.faces
library. This resource library supports Ajax functionality in JavaServer Faces applications.
If you use the f:ajax
tag on a page, the jsf.js
resource is automatically delivered to the client. It is not necessary to use the h:outputScript
tag to specify this resource. You may want to use the h:outputScript
tag to specify other JavaScript libraries.
In order to use a JavaScript resource directly with a UIComponent
, you must explicitly load the resource in either of the following ways:
By using the h:outputScript
tag directly in a Facelets page
By using the javax.faces.application.ResourceDependency
annotation on a UIComponent
Java class
To use the bundled JavaScript resource API directly in a web application, such as a Facelets page, you need to first identify the default JavaScript resource for the page with the help of the h:outputScript
tag. For example, consider the following section of a Facelets page:
<h:form> <h:outputScript name="jsf.js" library="javax.faces" target="head"/> </h:form>
Specifying the target as head
causes the script resource to be rendered within the head
element on the HTML page.
In the next step, identify the component to which you would like to attach the Ajax functionality. Add the Ajax functionality to the component by using the JavaScript API. For example, consider the following:
<h:form> <h:outputScript name="jsf.js" library="javax.faces" target="head"> <h:inputText id="inputname" value="#{userBean.name}"/> <h:outputText id="outputname" value="#{userBean.name}"/> <h:commandButton id="submit" value="Submit" onclick="jsf.ajax.request(this, event, {execute:'inputname',render:'outputname'}); return false;" /> </h:form>
The jsf.ajax.request
method takes up to three parameters that specify source, event, and options. The source parameter identifies the DOM element that triggered the Ajax request, typically this
. The optional event parameter identifies the DOM event that triggered this request. The optional options parameter contains a set of name/value pairs from Table 13-5.
Table 13-5 Possible Values for the Options Parameter
| Name | Value |
|---|---|
|
|
A space-delimited list of client identifiers or one of the keywords listed in Table 13-2. The identifiers reference the components that will be processed during the Execute phase of the lifecycle. |
|
|
A space-delimited list of client identifiers or one of the keywords listed in Table 13-2. The identifiers reference the components that will be processed during the render phase of the lifecycle. |
|
|
A |
|
|
A |
|
|
An object that may include additional parameters to include in the request. |
If no identifier is specified, the default assumed keyword for the execute
attribute is @this
, and for the render
attribute it is @none
.
You can also place the JavaScript method in a file and include it as a resource.
Use the javax.faces.application.ResourceDependency
annotation to cause the bean class to load the default jsf.js
library.
To load the Ajax resource from the server side, use the jsf.ajax.request
method within the bean class. This method is usually used when creating a custom component or a custom renderer for a component.
The following example shows how the resource is loaded in a bean class:
@ResourceDependency(name="jsf.js" library="javax.faces" target="head")
To demonstrate the advantages of using Ajax, revisit the guessnumber
example from Chapter 8, "Introduction to Facelets". If you modify this example to use Ajax, the response need not be displayed on the response.xhtml
page. Instead, an asynchronous call is made to the bean on the server side, and the response is displayed on the originating page by executing just the input component rather than by form submission.
The source code for this application is in the tut-install/examples/web/jsf/ajaxguessnumber/
directory.
The changes to the guessnumber
application occur in two source files.
The Facelets page for ajaxguessnumber
, ajaxgreeting.xhtml
, is almost the same as the greeting.xhtml
page for the guessnumber
application:
<h:head> <h:outputStylesheet library="css" name="default.css"/> <title>Ajax Guess Number Facelets Application</title> </h:head> <h:body> <h:form id="AjaxGuess"> <h:graphicImage value="#{resource['images:wave.med.gif']}" alt="Duke waving his hand"/> <h2> Hi, my name is Duke. I am thinking of a number from #{dukesNumberBean.minimum} to #{dukesNumberBean.maximum}. Can you guess it? </h2> <p> <h:inputText id="userNo" title="Enter a number from 0 to 10:" value="#{userNumberBean.userNumber}"> <f:validateLongRange minimum="#{dukesNumberBean.minimum}" maximum="#{dukesNumberBean.maximum}"/> </h:inputText> <h:commandButton id="submit" value="Submit"> <f:ajax execute="userNo" render="outputGroup" /> </h:commandButton> </p> <p> <h:panelGroup layout="block" id="outputGroup"> <h:outputText id="result" style="color:blue" value="#{userNumberBean.response}" rendered="#{!facesContext.validationFailed}"/> <h:message id="errors1" showSummary="true" showDetail="false" style="color: #d20005; font-family: 'New Century Schoolbook', serif; font-style: oblique; text-decoration: overline" for="userNo"/> </h:panelGroup> </p> </h:form> </h:body>
The most important change is in the h:commandButton
tag. The action
attribute is removed from the tag, and an f:ajax
tag is added.
The f:ajax
tag specifies that when the button is clicked the h:inputText
component with the id
value userNo
is executed. The components within the outputGroup
panel group are then rendered. If a validation error occurs, the managed bean is not executed, and the validation error message is displayed in the message pane. Otherwise, the result of the guess is rendered in the result
component.
A small change is also made in the UserNumberBean
code so that the output component does not display any message for the default (null) value of the property response
. Here is the modified bean code:
public String getResponse() { if ((userNumber != null) && (userNumber.compareTo(dukesNumberBean.getRandomInt()) == 0)) { return "Yay! You got it!"; } if (userNumber == null) { return null; } else { return "Sorry, " + userNumber + " is incorrect."; } }
The DukesNumberBean
session-scoped CDI managed bean stores the range of guessable numbers and the randomly chosen number from that range. It is injected into UserNumberBean
with the CDI @Inject
annotation so that the value of the random number can be compared to the number the user submitted:
@Inject DukesNumberBean dukesNumberBean;
You will learn more about CDI in Chapter 23, "Introduction to Contexts and Dependency Injection for Java EE".
You can use either NetBeans IDE or Maven to build, package, deploy, and run the ajaxguessnumber
application.
Make sure that GlassFish Server has been started (see Starting and Stopping GlassFish Server).
From the File menu, choose Open Project.
In the Open Project dialog box, navigate to:
tut-install/examples/web/jsf
Select the ajaxguessnumber
folder.
Click Open Project.
In the Projects tab, right-click the ajaxguessnumber
project and select Build.
This command builds and deploys the project.
Make sure that GlassFish Server has been started (see Starting and Stopping GlassFish Server).
In a terminal window, go to:
tut-install/examples/web/jsf/ajaxguessnumber/
Enter the following command:
mvn install
This command builds and packages the application into a WAR file, ajaxguessnumber.war
, located in the target
directory. It then deploys the application.
In a web browser, enter the following URL:
http://localhost:8080/ajaxguessnumber
Enter a value in the field and click Submit.
If the value is in the range of 0 to 10, a message states whether the guess is correct or incorrect. If the value is outside that range or if the value is not a number, an error message appears in red.
For more information on Ajax in JavaServer Faces Technology, see
JavaServer Faces project website:
JavaServer Faces JavaScript Library APIs:
http://docs.oracle.com/javaee/7/javaserverfaces/2.2/jsdocs/symbols/jsf.ajax.html


#include <iostream>
#include <fstream>
#include <boost/filesystem/operations.hpp>
#include "bayesian_webclass/data_preprocessor.h"
Go to the source code of this file.


I do not skateboard. I have no use for a skateboard. But I had to make one, so now I have one.
The process wasn't too hard. Just carve an image with Corel and then glue everything together. Sure, the glue didn't stick the boards together perfectly, and the edges are uneven, but it turned out all right.
And now I have a skateboard with Pickle Rick on it.


PC/Live Performance with Twitch Integration
Game Designer
Joey Yeo (Co-Producer, Game Designer, Programmer)
Chance Lytle (Co-Producer, Game Designer, Programmer)
Parker Ramsey (Programmer)
Dong Hyun Kang (Artist)
Commit to the Bits is a discovery project exploring the intersection of improvisational theater and Twitch live streaming. By applying factors unique to Twitch audiences such as their members’ mutual awareness and their potential for dramatic agency, we designed performative frameworks that embrace the character work, active decision-making, and role-playing inherent to improv.
We established the necessary design principles through methodical playtesting and rapid prototyping, quantitatively and qualitatively exploring the mediums’ overlap over the course of the semester.
Our team was designing ways to incorporate Twitch streaming audiences into real improvisational acting.
CloseOne of our games, for example, had Twitch viewers submit pictures around which the improv actors would build a scene.
CloseA second game had Twitch audience members call in to the scene, adding information that was then used by the actors.
Close


KAMIT SATKEEV
My name is Kamit Satkeev.
I was born in Kyrgyzstan.
Im graduated Kiev Technical University
This is in Kiev(Ukraine).
I recently moved to USA and I have a short job history. I worked for Comcast-conractor company as a installation technician